Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

masquer une colonne avec la valeur d'une cellule

  • Initiateur de la discussion Initiateur de la discussion olwagner
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

O

olwagner

Guest
Bonjour tout le monde,

J'aimerais écrire une macro qui dépasse mes compétences...

Ce que je cherche à faire c'est masquer une colonne si la cellule A1 contient le nom de la colonne. Exemple : si la cellule A1 est égale à M la macro masque la colonne M, si la valeur est AB, la macro masque la colonne AB etc... même si la valeur de la cellule A1 peut avoir 50 valeurs différentes.


J'ai eu beau chercher, mon niveau en VBA n'est pas suffisant pour ça ! Quelqu'un saurait faire ça ?

Merci de votre aide

Olivier
 
Re : masquer une colonne avec la valeur d'une cellule

Merci ça je connais, mais comment faire pour que la valeur "F:F" soit en fait la valeur contenue dans la cellule A1 ? Valeur qui peut changer selon la valeur que je veux lui donner (A:A si je veux masquer la colonne A par exemple)
 
Re : masquer une colonne avec la valeur d'une cellule

Bonjour,

A placer dans le code de la feuille (clic droit sur l'onglet et Visualiser le code):

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
On Error Resume Next
Columns.Hidden = False
Columns(Target.Text).Hidden = True
End Sub

La macro se déclanche quand on modifie A1.

Edit : c'est un nom de colonne : B C D... AB qu'on doit entrer.

A+
 
Re : masquer une colonne avec la valeur d'une cellule

Salut à tous
J'arrive un peu tard mais je diffuse tout de même ce que j'avais préparé
Idem, une autre proposition.
Clic-droit sur le nom de l'onglet>>Visualiser le code et tu colles
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" And VarType([A1]) = vbString Then _
    Cells(1, [A1].Value).EntireColumn.Hidden = True
End Sub
Attention : un module n'accepte qu'une seule macro par nom.
Si tu as déjà une macro, il fait la remplacer (ou insérer le code en supprimant la ligne de titre et le End sub de celui-ci
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…