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

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.
 

mromain

XLDnaute Barbatruc
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:

RO204B

XLDnaute Nouveau
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:

Discussions similaires

Réponses
26
Affichages
568
Réponses
6
Affichages
419

Statistiques des forums

Discussions
312 815
Messages
2 092 326
Membres
105 366
dernier inscrit
beru19781978