Ouvrir un nombre de Document en fonction des couleurs d'onglet Excel

Bonjour,

J'étais déjà venue vous demander de l'aide, mais j'ai bien avancé entre temps. Et ma macro fonctionne parfaitement. J'aimerais cependant pour terminer ajouter une dernière fonctionnalité.

Ma macro à l'heure actuelle permet de copier sur un document Word des graphiques présents dans des onglets sur Excel, commençant par le même caractère et ayant la même couleur.

Mon fichier Excel ayant beaucoup d'onglet commençant par le même caractère mais ayant des couleurs différentes, j'aimerais pour cela que à chaque fois qu'une couleur est différentes, ouvrir un nouveau document Word et les copier dedans.

Voilà mon code principale fonctionnel :

Option Explicit

Sub Export_Graphiques_Vers_Word()

Dim wrdApp As Word.Application
Dim wrdDoc As Word.Document
Dim onglet As Worksheet
Dim graphique As ChartObject
Application.ScreenUpdating = False
Set wrdApp = GetObject(, "Word.Application")
Set wrdDoc = wrdApp.ActiveDocument
For Each onglet In ThisWorkbook.Worksheets
    If onglet.Tab.Color = RGB(128, 128, 128) Then 'Si les onglets sont de cette couleur
        For Each graphique In onglet.ChartObjects
            If Left(graphique.Name, 1) = "(" Then   'Si les onglets commencents par "("
                graphique.CopyPicture Appearance:=xlScreen, Format:=xlPicture
                wrdApp.Selection.Goto what:=wdGoToBookmark, Name:="Graphique2" ' on recherche le signet dans Word pour se positionner
                wrdApp.Selection.MoveRight wdCharacter, 1
                'wrdApp.Selection.MoveLeft wdCharacter, 1 ' optionnel : pour se placer AVANT le signet (move left)
                wrdApp.Selection.PasteSpecial link:=False, DataType:=wdPasteMetafilePicture, Placement:=wdInLine, DisplayAsIcon:=False
            End If
        Next graphique
    End If
Next onglet
' -- Terminer
wrdDoc.Save
Set wrdDoc = Nothing: Set wrdApp = Nothing
Application.ScreenUpdating = True
End Sub

Maintenant voici une ébauche du second code que j'aimerai implémenté au premier :

Option Explicit

Sub couleur()

On Error GoTo fin
Dim i As Integer
Dim j As Integer
Dim couleur() As Integer
ReDim couleur(1 To 5)
'les couleurs de mes onglets
couleur(1) = 16
couleur(2) = 46
couleur(3) = 5
couleur(4) = 7
couleur(5) = 10

'les 5 fichiers Word
nb_to_alpha(1) = "A"
nb_to_alpha(2) = "B"
nb_to_alpha(3) = "C"
nb_to_alpha(4) = "D"
nb_to_alpha(5) = "E"

End Sub

N'ayant pas un deuxième avis, je bloque sur la manière de créer une boucle pour lui demander de copier les graphiques sur World et qu'à chaque fois qu'il y a une nouvelle couleur, ouvrir les nouveaux graphs dans une nouvelle feuille Word.

Merci pour toute personne qui pourrait m'aider.

Rechercher des sujets similaires à "ouvrir nombre document fonction couleurs onglet"