Masque feuilles selon la valeur d'une cellule

Résolu
Barbadouste Messages postés 4 Statut Membre -  
Barbadouste Messages postés 4 Statut Membre -
Bonjour,

Je voudrais réaliser un filtre sur excel mais je ne suis pas assez calé dans le domaine.
J'ai plusieurs feuilles avec pour nom les différents mois de l'année.
Dans chaque feuille j'ai une cellule (au même emplacement pour chaque feuille) indiquant une valeur.
Dans une feuille "Synthèse" je réalise la somme de ces valeurs présentent dans toutes les feuilles (ex : =3+1+4+0+5+0....
Ce que je voudrais réaliser c'est qu'en cliquant sur la cellule indiquant la somme totale, les feuilles ayant une cellule avec un 0 dedans soient masquées.

J'espère avoir été assez clair.

Je vous remercie pour votre aide.

1 réponse

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    en vba faire AltF11 pour accéder à l'éditeur.

    ensuite cliquez dans la feuille synthèse en haut à gauche et mettre ce code :

    Option Explicit
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Application.Intersect(Target, Range("A1")) Is Nothing Then 'cellule à adapter
    'Déclare la variable objet Worksheet
    Dim Ws As Worksheet
    'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
    'en compte.
    'ThisWorkbook correspond à l'objet classeur contenant la macro
    For Each Ws In ThisWorkbook.Worksheets
        If Ws.Name = "Synthèse" Then 'il faut garder une feuille visible a adapter au nom de la feuille
        Else
         If Sheets(Ws.Name).Range("A1") = 0 Then 'cellule à adapter
         Sheets(Ws.Name).Visible = False
         Else
         Sheets(Ws.Name).Visible = True
       End If
       End If
    Next Ws
    End If
    End Sub
    
    


    se déclenche au double clic en A1 de la feuille Synthèse

    ensuite enregistrer sous: classeur Excel prenant en charge les macros

    Voilà c'est tout simple!

    0
    1. Barbadouste Messages postés 4 Statut Membre
       
      Merci ça marche très bien !
      Oui comme ça, ça parait simple :-)

      Bonne journée
      0
    2. Barbadouste Messages postés 4 Statut Membre
       
      Par contre je voudrais faire la même chose sur d'autre cellule de la feuille "Synthèse" (référencé à une autre cellules des autres feuilles) et dans ce cas une erreur "nom ambigu détecté : Worksheet-BeforeDoubleClick" apparaît.
      Je ne peux pas mettre plusieurs boucles à la suite?

      Merci
      0
    3. Barbadouste Messages postés 4 Statut Membre
       
      C'est bon j'ai trouvé mon erreur.
      Désolé pour le précèdent message.
      0