Masquer et afficher plusieurs colonnes

  • Initiateur de la discussion Initiateur de la discussion apdf1
  • 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 !

apdf1

XLDnaute Impliqué
Bonsoir,

Je suis à la recherche d'un code plus simple pour cacher et afficher deux zones de colonnes.
Code:
Private Sub CommandButton1_Click()

If CommandButton1.Caption = "Masquer" Then
    CommandButton1.Caption = "Afficher"
    ' Worksheets(1).Columns("E:S").Hidden = True
     
        Columns("E:S").Select
    Selection.EntireColumn.Hidden = True
    Columns("V:AC").Select
    Selection.EntireColumn.Hidden = True
Else
    CommandButton1.Caption = "Masquer"
  ' Worksheets(1).Columns("E:S").Hidden = False
   
      Columns("E:S").Select
    Selection.EntireColumn.Hidden = False
    Columns("V:AC").Select
    Selection.EntireColumn.Hidden = False
   
   
End If
End Sub

Un très grand merci à tout ceux qui pourront m'aider...
Cordialement
Max
 

Pièces jointes

Dernière édition:
Re : Masquer et afficher plusieurs colonnes

Bonsoir,
Tu peux supprimer tous les select inutiles et qui ralentissent le code, même si c'est imperceptible pour le code présent.
d'où:

Code:
Private Sub CommandButton1_Click()

If CommandButton1.Caption = "Masquer" Then
    CommandButton1.Caption = "Afficher"
    ' Worksheets(1).Columns("E:S").Hidden = True
     
    Columns("E:S").EntireColumn.Hidden = True
    Columns("V:AC").EntireColumn.Hidden = True
Else
    CommandButton1.Caption = "Masquer"
  ' Worksheets(1).Columns("E:S").Hidden = False
   
    Columns("E:S").EntireColumn.Hidden = False
    Columns("V:AC").EntireColumn.Hidden = False
   
   
End If
End Sub

Bonne soirée.
 
Re : Masquer et afficher plusieurs colonnes

Et pour aller plus loin:
Private Sub CommandButton1_Click()

Code:
If CommandButton1.Caption = "Masquer" Then
    CommandButton1.Caption = "Afficher"
    ' Worksheets(1).Columns("E:S").Hidden = True
     
    Columns("E:S").Hidden = True
    Columns("V:AC").Hidden = True
Else
    CommandButton1.Caption = "Masquer"
  ' Worksheets(1).Columns("E:S").Hidden = False
   
    Columns("E:S").Hidden = False
    Columns("V:AC").Hidden = False
   
   
End If
End Sub
 
Re : Masquer et afficher plusieurs colonnes

Bonjour,

une autre solution, à placer dans le module de la feuille où se trouve le bouton et les colonnes, sinon préciser les objets "sheets" concernés :
Code:
Option Explicit
Private Sub CommandButton1_Click()
With Range("E:S,V:AC").EntireColumn
    .Hidden = Not .Hidden
    CommandButton1.Caption = IIf(.Hidden, "AFFICHER", "MASQUER")
End With
End Sub

bonne journée
@+
 
Re : Masquer et afficher plusieurs colonnes

Bonjour


En utilisant un ToggleButton plutot qu'un CommandButton
Code:
Private Sub ToggleButton1_Click()
Range("E:S,V:AC").EntireColumn.Hidden = ToggleButton1
End Sub

Quand le togglebutton est "appuyé" : les colonnes sont masquées
Quand il est "relaché": les colonnes sont affichées

Post scriptum: mieux vaut cocher dans les propriétés du contrôle
Ne pas déplacer ou dimensionner avec les cellules
 
- 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

Discussions similaires

Réponses
7
Affichages
168
Réponses
2
Affichages
896
Réponses
5
Affichages
481
Réponses
2
Affichages
467
Réponses
0
Affichages
567
Réponses
3
Affichages
454
Retour