Comment masquer automatiquement des lignes ?

Bonjour,

Je suis une débutante en ce qui concerne EXCEL. Je me débrouille pour faire des petites choses de base mais là, je crois que je vais devoir recourir à une macro et je n'y connait absolument RIEN. Il me faudrait des explications type "pour les nuls" !

Petite présentation de mon fichier :

Je travaille actuellement à l'élaboration d'un fichier EXCEL qui comporte 2 feuilles de calcul.

Ce fichier est un récapitulatif mensuel des tickets restaurants attribués à chaque salarié de la société.

La première feuille de calcul sert de base de travail et est uniquement destinée à un usage interne à la société.

La deuxième feuille de calcul doit être transmise à la société qui nous fournit les tickets restaurant.

Les deux feuilles sont liées :

Lorsque dans la feuille 1, colonne C = 0 ; dans la feuille 2, les colonnes C, D et E sont automatiquement égales à 0.

Voici à présent ma question :

A ce stade de mon travail, je souhaiterais masquer automatiquement certaines lignes de la deuxième feuille de calcul en fonction de la valeur de certaines cellules de la première feuille de calcul.

En pratique (par exemple), lorsque dans la feuille 1 C12 = 0 je voudrais que, dans la feuille 2, la ligne 11 soit automatiquement masquée.

Et inversement, lorsque dans la feuille 1 C12 = 19 je voudrais que, dans la feuille 2, la ligne 11 soit de nouveau affichée avec les valeurs correspondantes.

J'espère avoir été asser claire et je vous joint mon fichier.

Je vous remercie par avance de l'aide que vous pourrez m'apporter.

Stéphanie.

122tableau-tr.zip (11.15 Ko)

Bonsoir,

dans le VBE de la feuille "TAB COMMANDE"

masque les lignes en activant cette feuille

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

et dans un module, bouton pour afficher tout

Sub AfficheTout()
    Sheets("TAB COMMANDE") _
    .Range("a1:a" & [b65000].End(xlUp).Row).Rows.Hidden = False
End Sub

Amicalement

Claude

Bonjour Claude !

Merci beaucoup de ta réponse !

Je vais tâcher de la mettre en pratique, ce qui n'est pas forcement gagné...

Je me permettrai de revenir vers toi en cas de besoin. ^^'

Merci encore.

Stéphanie.

Bonjour,

Si oK, n'oublie pas la petite formalité

a resolu3

Claude

Rechercher des sujets similaires à "comment masquer automatiquement lignes"