Macro VBA : Masquer colonnes de plusieurs feuilles simultanément

Résolu
Ducoduc Messages postés 167 Statut Membre -  
Ducoduc Messages postés 167 Statut Membre -
Bonjour à tous,

Après avoir tourner en rond pendant un petit moment, je m'en remet à vous. Mon problème est le suivant : j'ai un fichier excel contenant plusieurs feuilles (4).
Ce que je voudrais faire c'est : Si, dans la feuille MENU, la cellule D5 = X alors masquer les colonnes B et C de TOUTES les autres feuilles (FEUIL1/2/3).
Actuellement je n'arrive pas à masquer les colonnes de toutes les feuilles en même temps, mais seulement sur une feuille.

Ci dessous, l'ossature de mon code :

If Range("D5") = V Then
Sheets(Array("FEUIL1", "FEUIL2", "FEUIL3")).Select
Sheets("FEUIL1").Activate
Columns ("B:C").Select
Selection.EntireColumn.Hidden = True


Et enfin, autre chose, si je voulais que l'action se déclenche lorsque la cellule est vide, la syntaxe serait alors: Range("D5") <> "" Then etc.

Pardonnez mon ignorance et merci beaucoup pour votre aide
Bonne journée à vous

2 réponses

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

    comme ceci avec une boucle sur toutes les feuilles sauf la feuille MENU:

    Option Explicit
    Private Sub CommandButton1_Click()
    Dim f As Worksheet
     For Each f In ActiveWorkbook.Sheets
        If f.Name = "MENU" Then
        Else
        If Sheets("MENU").Range("D5").Value = "X" Then
            Worksheets(f.Name).Columns("B:C").EntireColumn.Hidden = True
            Else
           Worksheets(f.Name).Columns("B:C").EntireColumn.Hidden = False
        End If
        End If
        Next f
    End Sub
    

    0
  2. Ducoduc Messages postés 167 Statut Membre 16
     
    Merci pour ta réponse Le Pivert,

    En fait mon problème est plus profond et je n'arrive pas a tout articuler ensemble. J'ai joint mon fichier plus bas. Mon but avec ce fichier est de :

    - depuis la page MENU, après avoir choisi le type de produits (liste déroulante en E2) et les critères à afficher (case à remplir, colonne D) je souhaiterais que la macro (lancée par le bouton sur la droite) m'affiche le résultats de la recherche.
    C'est à dire, la feuille qui porte le nom du type de produits avec, sur cette feuille, uniquement les données relatives aux critères choisis précédemment (feuille menu).

    Pour l'instant je n'arrive qu'à afficher la feuille correspondante au produit voulu, mais je ne sais pas comment masquer/afficher les colonnes de données en fonction de mes critères choisies dans la feuille Menu...

    Le fichier est beaucoup plus parlant...
    http://www.cjoint.com/c/GJkhpcciejV

    Un grand grand merci !
    Bonne journée
    0