Masquer ligne selon condition

Masquer ligne selon condition - VB/VBA/VBS - Programmation

Marsh Posté le 04-08-2015 à 17:40:57    

Bonjour,
 je cherche à masquer les lignes d'une feuille selon deux critères précis
il s'agit des lignes 98 à 266
si la valeur d'une cellule dans la plage A98 à A266,  est déjà présente edans la plage A5 et A92 que sur la même ligne  mais dans la colonne Vde V5 V92 la valeur est égale à zéro alors masquer la ligne.  
j'ai testé le code ci dessous mais il m'affiche à chaque fois l'indice n'appartient pas à la selection
 
[cpp]Sub masquer1()
 
 Dim x As Variant
 Dim I As Integer
 Dim J As Integer
 
ReDim x(nb_codes)
nb_codes = Sheets("Non-current Assets form" ).Cells(5, 1).Cells(92, 1)
 
For I = 1 To nb_codes
11   x(I) = Sheets("Non-current Assets form" ).Cells(I, 1)
Next I
 
For I = 1 To UBound(x)
   x(I) = Sheets("Non-current Assets form" ).Cells(I, 1)
Next I
 
Sheets("Non-current Assets form" ).Select
 
 For J = 98 To 107
 If Cells(J, 1).Value = x(I) And Cells(I, 22).Value = 0 Then
 Rows(J).Hidden = True
 End If
 Next
 
 For J = 109 To 120
 If Cells(I, 1).Value = x(I) And Cells(I, 22).Value = 0 Then
 Rows(J).Hidden = True
 End If
 Next
 
 For J = 122 To 130
 If Cells(J, 1).Value = x(I) And Cells(I, 22).Value = 0 Then
 Rows(J).Hidden = True
 End If
 Next
end sub

Reply

Marsh Posté le 04-08-2015 à 17:40:57   

Reply

Marsh Posté le 05-08-2015 à 11:18:21    

 
           Bonjour !
 
           Conformément aux règles de ce forum, merci de baliser le code via l'icône dédiée ‼
 
           La conception par boucle est à éviter, mieux vaut utiliser un filtre ou un filtre avancé …
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed