Masquer ligne selon condition - VB/VBA/VBS - Programmation
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é …
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