Excel masquer ligne à 0 si colonnes à 0

MYSKARLET -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
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 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
bonjour,

Tu pourrais nous mettre ta macro pour qu'on puisse te la corriger ?
0
MYSKARLET
 
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 15481 Date d'inscription   Statut Contributeur Dernière intervention   4 730
 
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
MYSKARLETT
 
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 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
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 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
de rien....
0