Sélection de feuilles d'un fichier Excel d'après la couleur de leur onglet

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

RO204B

XLDnaute Nouveau
Est-il possible de sélectionner, au moyen d'une macro, des feuilles d'un fichier Excel d'après la couleur de leur onglet (peu important, par conséquent, le nombre et le nom de ces feuilles) ?
Merci d'avance à qui voudra bien m'éclairer et me donner la syntaxe d'une telle macro.
 
Re : Sélection de feuilles d'un fichier Excel d'après la couleur de leur onglet

Bonjour RO204B,

Je pense que tu t'es trompé de forum !!
Pour ton prochain problème, il faudra ouvrir une discussion ici.

Sinon, pour ton problème, voici une macro à adapter :
VB:
Sub SelectionOngletsCouleur()
'déclarer les variables
Dim tabFeuilles() As String, curFeuille As Worksheet, nbFeuilles As Long

    'initialiser les variables
    ReDim tabFeuilles(1 To 1): tabFeuilles(1) = ""
    nbFeuilles = 0
    
    'boucler sur tous les onglets de ce classeur
    For Each curFeuille In ThisWorkbook.Worksheets
        'si la couleur de l'onglet correspond à la couleur :
        If curFeuille.Tab.Color = 255 Then
            ''ajouter le nom de l'onglet dans le tableau
            'agrandir le tableau
            nbFeuilles = nbFeuilles + 1
            ReDim Preserve tabFeuilles(1 To nbFeuilles)
            'ajouter le nom de l'onglet en dernière position
            tabFeuilles(nbFeuilles) = curFeuille.Name
        End If
    Next curFeuille
    
    'sélectionner les onglets correspondants (si il y en a)
    If tabFeuilles(1) <> "" Then ThisWorkbook.Sheets(tabFeuilles).Select
End Sub
Il faut modifier le "code couleur" (255) en fonction de la couleur souhaitée (en l'occurrence, 255 représente le rouge).

Voici une macro qui permet de récupérer le code couleur de la couleur de fond de la cellule active :
VB:
Sub RecupCodeCouleur()
    'afficher le code couleur correspondant à la couleur de fond de la cellule active
    MsgBox Selection.Interior.Color
End Sub
a+
 
Dernière édition:
Re : Sélection de feuilles d'un fichier Excel d'après la couleur de leur onglet

Merci beaucoup MRomain pour cette réponse complète et très didactique (j'aime !) Avec mes excuses pour l'erreur de forum.

P.S. Je viens de faire l'essai : ça marche (il faut ajouter " Index " à " Tab.Color " => Tab.ColorIndex). Alors franchement, chapeau bas et merci encore !
 
Dernière édition:
- 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
1
Affichages
358
Retour