Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Masquer des lignes avec conditions

3 réponses
Avatar
Bruno RCSC
Bonjour

Sous XP, Excel 2002

Si j'ai bien compris, le code ci dessous permet de supprimer les lignes si
dans la colonne C, la cellule est égale à zéro et jusqu'à la dernière
cellule remplie de la colonne A.

For i = Range("A65536").End(3).Row To 1 Step -1

If Range("C" & i) = 0 Then Rows(i).Delete

Next



Mes questions :

- quel doit être le code pour supprimer la ligne si la colonne C ET la
colonne D ET la colonne E la cellule est égale à zéro ?

- pour masquer, on remplace Rows(i).Delete par Rows(i).Hidden ?

En d'autres termes, je veux masquer toutes les lignes qui ont zéro en
colonne C, D, E.



Merci pour votre aide.



BH

3 réponses

Avatar
JB
Bonsoir,


If Range("C" & i) = 0 And Range("D" & i) = 0 And Range("E" & i) = 0
Then Rows(i).Hidden=True

JB



On 10 fév, 19:12, "Bruno RCSC" wrote:
Bonjour

Sous XP, Excel 2002

Si j'ai bien compris, le code ci dessous permet de supprimer les lignes si
dans la colonne C, la cellule est égale à zéro et jusqu'à la dern ière
cellule remplie de la colonne A.

For i = Range("A65536").End(3).Row To 1 Step -1

If Range("C" & i) = 0 Then Rows(i).Delete

Next

Mes questions :

- quel doit être le code pour supprimer la ligne si la colonne C ET la
colonne D ET la colonne E la cellule est égale à zéro ?

- pour masquer, on remplace Rows(i).Delete par Rows(i).Hidden ?

En d'autres termes, je veux masquer toutes les lignes qui ont zéro en
colonne C, D, E.

Merci pour votre aide.

BH


Avatar
LSteph
Bonjour,

Sub azaz()
Dim lig As Long, c As Range
'détermination dernière ligne entre cde
For Each c In [c65536:e65536]
lig = WorksheetFunction.Max(lig, c.End(xlUp).Row)
Next
'masquage démasquage
Application.ScreenUpdating = False
For Each c In Range(Cells(lig, 3), Cells(1, 3))
c.EntireRow.Hidden = (c = 0 And c.Offset(0, 1) = 0 _
And c.Offset(0, 2) = 0)
Next
End Sub

'lSteph

Bonjour

Sous XP, Excel 2002

Si j'ai bien compris, le code ci dessous permet de supprimer les lignes si
dans la colonne C, la cellule est égale à zéro et jusqu'à la dernière
cellule remplie de la colonne A.

For i = Range("A65536").End(3).Row To 1 Step -1

If Range("C" & i) = 0 Then Rows(i).Delete

Next



Mes questions :

- quel doit être le code pour supprimer la ligne si la colonne C ET la
colonne D ET la colonne E la cellule est égale à zéro ?

- pour masquer, on remplace Rows(i).Delete par Rows(i).Hidden ?

En d'autres termes, je veux masquer toutes les lignes qui ont zéro en
colonne C, D, E.



Merci pour votre aide.



BH




Avatar
Bruno RCSC
Merci à vous deux.

BH