Afficher / masquer automatiquement les feuilles dans un classeur Excel

(Last Updated On: 5 janvier 2017)

Si votre classeur Excel comporte un grand nombre de feuilles de calcul, et que vous souhaitez limiter l’affichage à quelques feuilles pour l’utilisateur final, il peut être fastidieux d’avoir à afficher/masquer manuellement (clic droit sur un onglet, puis Afficher ou Masquer).
Par exemple, vous avez créé un tableau de bord dans une feuille de synthèse à partir de tableaux de données, et vous souhaitez masquer ces données pour rendre votre présentation plus claire visuellement.

Voici une macro qui permet d’afficher ou masquer automatiquement les onglets, avec la possibilité de conserver les feuilles à afficher en permanence pour l’utilisateur.

Voici le code à insérer dans un module de l’éditeur de macro (raccourci Alt+F11) :

Option Explicit

Private Sub DevVisibleSheets(Optional var)
' Afficher ou masquer les feuilles de calcul
' Feuilles de présentation exclues :
' - Feuil1 = Instructions
' - Feuil2 = Synthèse BU
' - Feuil3 = Synthèse Clients
Dim sh As Worksheet, act_sh As Worksheet
Dim bVisible As Boolean

On Error Resume Next

Set act_sh = ActiveSheet

bVisible = Sheets("Feuil6").Visible
If Err <> 0 Then bVisible = False

For Each sh In ThisWorkbook.Sheets
If sh.Name <> "Feuil1" And _
sh.Name <> "Feuil2" And _
sh.Name <> "Feuil3" Then
sh.Visible = Not bVisible
End If
Next sh

act_sh.Select

On Error GoTo 0

End Sub

Sub AfficherMasquerFeuillesCalcul()
' Afficher ou masquer les feuilles de calcul
Call DevVisibleSheets

End Sub

Vous remarquerez que les 3 feuilles à afficher en permanence se nomment : “Feuil1”, “Feuil2” et “Feuil3”. Une quatrième feuille nommée “Feuil6” dans le code, doit faire partie des onglets à masquer.

Enfin, exécutez la macro AfficherMasquerFeuillesCalcul (raccourci Alt+F8 puis bouton Exécuter).
Le résultat dépend de l’affichage initial. Par exemple, si “Feuil6” était masquée initialement, celle-ci ainsi que toutes les autres feuilles masquées vont s’afficher. A l’inverse, si “Feuil6” était visible initialement, celle-ci ainsi que toutes les autres feuilles affichées vont disparaître à l’écran, à l’exception des feuilles utilisateur “Feuil1” à “Feuil3”.

Et voilà !

Souscrivez à ma newsletter :

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *