Je suis confronté à un problème que je n'arrive pas à résoudre depuis un petit moment malgré tout ce qu'il y a sur le forum.
Ce n'est pas facile à expliquer par écrit, je cherche à masquer des colonnes dans une Feuil2 en fonction de la présence ou non d'une croix dans une colonne se trouvant à gauche du nom contenu dans la colonne de la Feuil1.
Un peu cafouillis tout ça, je vous mets donc un fichier joint avec un exemple qui sera je l'espère plus compréhensible.
Re : Masquer des colonnes selon contenu de cellules associées à des noms
Bonsoir
Une piste à peaufiner
Code:
Sub a()
Dim c As Range, r As Range
For Each c In Selection
If IsEmpty(c) Then
Set r = Feuil2.Rows("7:7").Find(c.Offset(, 1))
r.Columns.Hidden = True
End If
Next c
End Sub
PS: j'ai testé cela fonctionne.
Conditions du test
j'ai remplacé les ... en feuille 1 par des mots
Puis Sélection de la plage E11:E17 feuille1 et exécution de la macro
Re : Masquer des colonnes selon contenu de cellules associées à des noms
Re bonsoir,
Merci de t'être penché sur le problème.
Ta macro me masque une colonne qui ne contient rien (en l’occurrence la colonne B dans mon fichier joint) alors que les colonnes masquées devrait être "Pommes" et "Tomates
Re : Masquer des colonnes selon contenu de cellules associées à des noms
Re Staple1600,
Mon problème (et je crois ne pas te l'avoir dit au début) est que les noms des colonnes de la Feuil1 peuvent changer (ex: en F11 je peux avoir "Carottes" comme je peux avoir "Tomates" ou "Salade"). C'est pour ça qu'il est important d'associer les cellules de la colonne E avec les noms de la colonne F.
La finalité est donc de masquer les colonnes (de la Feuil2) dont le nom n'est pas associé à une croix dans la Feuil1