Excel masquer ligne à 0 si colonnes à 0

Fermé
MYSKARLET - Modifié par MYSKARLET le 27/09/2012 à 21:20
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 7 oct. 2012 à 14:37
Bonjour,

Je travaille sur un tableau sur lequel j'ai une colonne libellé, et 5 autres colonnes avec des chiffres. Je voudrais pouvoir masquer les lignes, mais seulement sir les 5 dernières colonnes comporte un 0.
J'ai rentré une macro mais dés qu'une colonne est à 0 elle me masque la ligne, ce qui ne convient pas.
Merci de m'éclairer.
myskarlet
A voir également:

3 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
27 sept. 2012 à 22:43
bonjour,

Tu pourrais nous mettre ta macro pour qu'on puisse te la corriger ?
0
Bonjour

Voici la macro :
Private Sub Worksheet_Activate()
Dim Lg%, i%
Application.ScreenUpdating = False
Lg = Range("b" & Rows.Count).End(xlUp).Row
Range("a1:a" & Lg).Rows.Hidden = False
For i = 4 To Lg
If Cells(i, "c") = 0 And Cells(i, "b") <> "" Then
Cells(i, "c").Rows.Hidden = True
End If
Next i
End Sub

Je ne maitrise absolument pas les macros, et j'ai fait un copier coller d'une réponse qu'il y avait déjà eu sur le forum.

Merci
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
28 sept. 2012 à 16:18
bonjour

Comme ceci cela devrait mieux aller :

Private Sub Worksheet_Activate()
Dim Lg%, i%
Application.ScreenUpdating = False
Lg = Range("A" & Rows.Count).End(xlUp).Row
Range("A1:A" & Lg).Rows.Hidden = False
For i = 4 To Lg
    If Application.WorksheetFunction.Sum(Range("B" & i & ":E" & i)) = 0 Then
        Rows(i).Hidden = True
    End If
Next i
End Sub

Si la somme de tes colonnes B à E est égale à zéro ta ligne est masquée.
0
Bonjour

Désolée de répondre si tard.
Merci beaucoup car effectivement cela fonctionne seul petit "hic" la ligne des libellés des colonnes est également masqué !!

A force je vais y arriver

Merci
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
28 sept. 2012 à 16:19
Bonjour,

Sub masquerLig()
    Dim lig As Long
    For lig = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        Cells(lig, 1).EntireRow.Hidden = Application.WorksheetFunction.CountIf(Cells(lig, 2).Resize(1, 5), 0) = 5
    Next lig
End Sub


avec tes libellés en colonne A (1) et tes 5 colonnes à partir de B (2)

eric
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
7 oct. 2012 à 14:37
de rien....
0