Afficher ou masquer une partie des feuilles

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

Lipadec

XLDnaute Occasionnel
Bonjour le Forum

Dans un classeur, j'ai plus de 50 feuilles, les unes avec onglet coloré, et que j'utilise souvent, et les autres avec l'onglet non coloré et que j'utilise très rarement.
En cherchant dans les forums, j'ai trouvé les macros suivantes :

Sub Afficher_Feuilles_Masquées()
For Each sh In ThisWorkbook.Sheets
If sh.Visible = False Then sh.Visible = True
Next
End Sub

Sub Masquer_Feuilles_Affichées()
Dim nbre As Byte, cptr As Byte
Application.ScreenUpdating = False
nbre = ThisWorkbook.Sheets.Count
cptr = 2
For cptr = 2 To nbre
Sheets(cptr).Visible = 0
Next
Application.ScreenUpdating = False
End Sub

J'utilise 2 boutons, l'un pour masquer toutes les feuilles, l'autre pour les afficher

Mais il se trouve que je ne veux masquer, en un seul clic, que les feuilles dont l'onglet n'est pas coloré, et que j'utilise rarement comme j'ai dit, puis les afficher en cas de besoin.

Pouvez-vous m'aider à compléter ces macros, qui fonctionnent d'ailleurs bien, pour pouvoir faire ce que je veux

Merci d'avance pour votre aide

Lipadec
 
Re : Afficher ou masquer une partie des feuilles

Bonjour Lipadec

pour masquer les feuilles dont les onglets ne sont pas colorés :

Code:
Dim ws As Worksheet
For Each ws In Worksheets
    If ws.Tab.ColorIndex = xlColorIndexNone Then ws.Visible = xlSheetVeryHidden
Next ws

bonne journée
@+
 
Re : Afficher ou masquer une partie des feuilles

Re

Merci cher Pierrot93 ,
ça marche à merveille, mais j'ai dû changer

Visible = xlSheetVeryHidden par Visible = 0,
pour pouvoir les afficher en cas de besoin

Bonne journée et merci

Lipadec
 
Re : Afficher ou masquer une partie des feuilles

bonjour,
j'aurais voulu utiliser cette macro pour masquer des feuilles mais qu'elles soit toujours disponibles. en effet j'ai des boutons qui renvoient vers ces feuilles masquer et ils ne fonctionnent plus.
comment faire?
 
Re : Afficher ou masquer une partie des feuilles

Bonjour tout le monde

Je pense que la meilleure solution c'est d'appliquer ces deux macros

Sub Afficher_Feuilles()
For Each sh In ThisWorkbook.Sheets
If sh.Visible = False Then sh.Visible = True
Next
End Sub

Sub Masquer_Feuilles()
Dim nbre As Byte, cptr As Byte
Application.ScreenUpdating = False
nbre = ThisWorkbook.Sheets.Count
cptr = 2
For cptr = 2 To nbre
Sheets(cptr).Visible = xlSheetHidden
Sheets(cptr).Visible = 0
Next
Application.ScreenUpdating = False
End Sub

Bonne continuation

Lipadec
 
- 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
211
Réponses
2
Affichages
892
Retour