Masquer/afficher colonne en fct d'une valeur présente

Bonjour,

Je souhaiterais, via une macro, pouvoir démasquer/masquer automatiquement des colonnes en fonction qu'une valeur est présente en ligne 4 de la colonne ou pas.

En d'autres terme et p.ex si la valeur B4 est égale à "", la colonne B doit être/se masquer, si par contre la valeur B4 est égale à une valeur (p.ex. "A" ou "6") la colonne doit se démasquer.

Ci-joint un classeur qui permettra peut-être de mieux comprendre ce que je souhaite.

Mille mercis à celui/celle qui pourra m'aider à trouver le code associé.

Chimilimili

Bonjour,

Une première proposition.

Cdlt.

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, [B4]) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        If Target = vbNullString Then
            [F1].EntireColumn.Hidden = True
        Else
            [F1].EntireColumn.Hidden = False
        End If
    End If
End Sub

Bonjour Jean-Luc,

Merci pour ta réponse, code associé et classeur joint.

Toutefois quand j'ouvre le classeur et que je teste, les colonnes ne se masquent/démasquent pas de manière dynamique en fonction de la présence ou non d'une donnée ?

Aurais-tu une suggestion à me faire dans ce sens là ?

Un grand merci d'avance.

Chimilimili

Bonjour,

Je ne comprend pas trop l'utilité du début de ta formule =SI(RECHERCHEV(D3;INDEX1;2;FAUX)=""...

Dans quel cas D3 à K3 (1 à 9) ne peuvent-ils être trouvés en colonne 1 de INDEX1 qui contient de 1 à 11 ?

Tu parles de D:K, on a l'impression que c'est D:L

On ne sait pas trop si tu veux afficher la colonne si la ligne liée est remplie en B, ou bien si le nombre en ligne 3 est trouvé en colonne B...

Pourquoi 11 lignes pour 9 ou 10 colonnes concernées ?

1 et 6 en B sont en face de 1 et 6 en A. Peuvent-ils se trouver sur n'importe quelle ligne ?

Bref, plutôt qu'une formule tarabiscotée tu ne veux pas expliquer avec des phrases les conditions d'affichage des colonnes ?

eric

Bonjour,

Ma proposition concernait la cellule B4 comme indiquée dans ton exemple.

Et le code fonctionne :

1 - cellule vide = colonne F masquée

2 - cellule <> vide = colonne affichée.

Et ceci sans intervention manuelle.

Tu dois admettre que ta question était mal formulée, et que la réponse pouvait ne pas âtre adaptée.

De de plus, je me prénomme Jean-Eric.

A te relire, avec des explications claires de ce que tu souhaites.

Cdlt.

Bonjour,

Merci pour vos réponses. J'avais posté ma question également sur l'excellent MPFE, où l'incollable MichD m'a finalement délivré l'ultime réponse.

Pour les personnes intéressées par cette question voici le lien vers ce fil.

Bien cordialement,

Chimilimili Blick

Bonjour,

Nous sommes le 30 septembre. Tu avais le principe de la réponse depuis le 22 septembre avec tes éléments fournis.

Et tu ne réponds pas aux questions posées.

Bonjour,

Bon ben comme ça on sait que pour ta prochaine question il vaut mieux attendre avant de chercher...

eric

Rechercher des sujets similaires à "masquer afficher colonne fct valeur presente"