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

couleur des onglets automatique

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

C

Chico64

Guest
Salut à Vous,

Dans mon classeur, j'ai de nombreuses feuilles, je souhaite que la couleur de de leur onglet soit intercalé c'est à dire la premiere feuille en bleu la seconde en blanc, la troisiéme à nouveau en bleu, la quatriéme à nouveau en blanc, ....

J'ai peut etre une petite idée: je crée une nouvelle feuille le programme regarde la couleur de la précédente et si c'est bleu il mais alors blanc ou inversement.

Peut etre que ma logique n'est pas la bonne?

Dites moi, je vous remercie par avance.
Chico
 
Re : couleur des onglets automatique

Bonjour Chico64

essaie avec ce code

Code:
For i = 1 To ActiveWorkbook.Sheets.Count Step 2

    ActiveWorkbook.Sheets("Feuil" & i).Tab.ColorIndex = 5

    ActiveWorkbook.Sheets("Feuil" & i + 1).Tab.ColorIndex = 2
Next i
 
Re : couleur des onglets automatique

bonjour chico, laurent

une autre solution :

Code:
Option Explicit
Sub test()
Dim ws As Worksheet
For Each ws In Worksheets
        If ws.Index Mod 2 = 0 Then ws.Tab.ColorIndex = 5 Else ws.Tab.ColorIndex = xlNone
Next ws
End Sub

bonne fin d'après midi
@+
 
Re : couleur des onglets automatique

Re,

Merci pour vos réponses qui ont été très rapides.

Je pense que la solution de Pierrot93 est peut etre mieux car mes feuilles ne se nomment pas feuille1, feuille2,feuille3,.... (elles ont leur propre nom et son différent pour chaque feuille) donc je ne pense pas pouvoir faire :
Code:
ActiveWorkbook.Sheets("Feuil" & i)

Par contre pour le code de Pierrot93
Code:
Sub test()
Dim ws As Worksheet
For Each ws In Worksheets
        If ws.Index Mod 2 = 0 Then ws.Tab.ColorIndex = 5 Else ws.Tab.ColorIndex = xlNone
Next ws
End Sub

Comment puis-je faire si je veux que ce jeu de couleur blanc ou bleu commence qu'à la troisiéme feuille ?

Merci davance.
Chico
 
Re : couleur des onglets automatique

re

tu peux également modifier mon code comme ceci :

Code:
Option Explicit
Sub test()
Dim ws As Worksheet
For Each ws In Worksheets
    If ws.Index > 2 Then If ws.Index Mod 2 = 0 Then ws.Tab.ColorIndex = 5 _
        Else ws.Tab.ColorIndex = xlNone
Next ws
End Sub

bonne soirée
@+
 
Re : couleur des onglets automatique

Merci Pierrot,

Pourrais-tu m'expliquer ces quatres lignes de dessous (car je ne suis pas la pour copier bétement 🙂)


Code:
For Each ws In Worksheets
    If ws.Index > 2 Then If ws.Index Mod 2 = 0 Then ws.Tab.ColorIndex = 5 _
        Else ws.Tab.ColorIndex = xlNone
Next ws

Je ne comprends pas tout:
Code:
If ws.Index Mod 2 = 0
Code:
ws.Tab.ColorIndex = 5
Code:
ws.Tab.ColorIndex = xlNone

Je te remercie davance.
 
Re : couleur des onglets automatique

Re

Code:
If ws.Index Mod 2 = 0
pour tester si le numéro d'index est pair. l'opérateur "mod" renvoie le reste de la division par 2 (nombre après mod dans le code) du numéro d'index, si égal à 0 alors c'est pair, j'applique la couleur bleu à l'onglet ... cf code ci dessous
Code:
ws.Tab.ColorIndex = 5

sinon aucune couleur n'est appliquée à l'onglet :
Code:
ws.Tab.ColorIndex = xlNone

en espérant avoir été clair...

@+
 
Re : couleur des onglets automatique

Re à tous

If ws.Index Mod 2 = 0 Teste si numéro de feuille est pair
ws.Tab.ColorIndex = 5 Met l'onglet en couleur bleue
ws.Tab.ColorIndex = xlNone Pas de couleur d'onglet
 
- 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

Réponses
12
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…