Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1558 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Test logique puis masquage de la ligne correspondante?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Test logique puis masquage de la ligne correspondante?

n°1135697
ezeckiel2k
Posté le 30-06-2005 à 12:03:37  profilanswer
 

Bonjour,
 
Je suis en train de créer (enfin, pas vraiment, vu que j'y arrive pas :D) une macro à insérer dans ma macro auto_open()
 
Le principe est que la macro teste les cellules G1 à G200 pour voir si le texte "ABC" y est présent ou non...
 
La macro devrait ensuite sélectionner l'inverse de ces cellules, et donc masquer les lignes entières dans lesquelles la cellule G correspondante ne contient pas "ABC"...
 
Si quelqu'un a une piste, je suis preneur ;)
 
Merci d'avance ;)

mood
Publicité
Posté le 30-06-2005 à 12:03:37  profilanswer
 

n°1135769
ezeckiel2k
Posté le 30-06-2005 à 12:40:01  profilanswer
 

Un chtitup :)

n°1135994
ezeckiel2k
Posté le 30-06-2005 à 15:04:28  profilanswer
 

Rechtitup ;)

n°1136231
Gusdabo
Posté le 30-06-2005 à 16:59:20  profilanswer
 

Un truc du genre
 
For i = 1 to 200
  if range("G" & i) = "ABC" then
    Rows(i).RowHeight = 0
  end if
next
 
ca te va??

n°1136476
galopin01
Posté le 30-06-2005 à 21:34:10  profilanswer
 

bonsoir,
Sinon il ya aussi cet article là :

Code :
  1. Sub test()
  2. For i = 1 To 200
  3. If InStr(1, Cells(i, 7), "ABC", 1) = 0 Then Rows(i).Hidden = True
  4. Next
  5. End Sub


Instr est capable de détecter tachaine dans une chaine plus grande...
A+


---------------
roger
n°1136656
Gusdabo
Posté le 30-06-2005 à 23:49:58  profilanswer
 

Je connaissais pas InStr...
Merci du tuyeau!

n°1136661
AlainTech
Pas trouvé? Cherche encore!
Posté le 01-07-2005 à 00:02:40  profilanswer
 

Je propose ceci qui correspond mieux au résultat demandé:

Private Sub Workbook_Open()
  Dim rRange As Range
  Dim vCell As Variant
  Set rRange = Range([G1], [G200])
  For Each vCell In rRange
    If InStr(1, UCase(vCell), "ABC" ) = 0 Then
      vCell.EntireRow.Hidden = True
    End If
  Next vCell
End Sub


Accessoirement, il est déconseillé d'utiliser encore la macro auto_open qui a été gardée pour "compatibilité arrière".
Il est recommandé d'utiliser l'événement Open de ThisWorkbook.


Message édité par AlainTech le 01-07-2005 à 00:30:56

---------------
Si on vous donne une info qui marche, DITES-LE!!!! ------ Si vous trouvez seul, AUSSI, votre solution peut servir à d'autres! ------ Je dois la majorité de mes connaissances à mes erreurs!

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Test logique puis masquage de la ligne correspondante?

 

Sujets relatifs
changer la couleur d'une ligne d'un tableau avec les csstest validation formulaire
Lire ligne précédente d'un fichierListBox ou ListView => chaîne trop longue, cmt passer à la ligne
mysql en ligne de commandesformulaire : ajout d'une ligne
Probleme d'affichage css (retour a la ligne)alignement à droite, au milieu et à gauche sur la même ligne
trouver le n° de ligne d'une comboboxComment faire pr trouver la ligne associée d'une combobox dans
Plus de sujets relatifs à : Test logique puis masquage de la ligne correspondante?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR