Copier coller graphique sur différentes feuilles

Bonjour,

Comment faire pour copier coller des graphiques excel en sachant qu’on garde les memes tableau sur plusieurs pages mais les valeurs dedans changent ?

J’ai 52 feuilles différentes avec les mêmes tableau mais valeurs différentes.

Merci d’avance,

Cordialement

Bonjour,

Fais un premier graphique. Fais un clic droit dessus et enregistre-le comme modèle. Sur la deuxième feuille, sélectionne le tableau et fais un graphique en choisissant le graphique modèle :

Recommence sur les autres feuilles. Si tu postes ton classeur, on peut écrire une macro pour automatiser le travail.

Daniel

Voici le lien vers mon excel (trop volumineux pour le site) : SwissTransfer - Envoi sécurisé et gratuit de gros fichiers

Serait-il possible de rajouter une macro pour ajouter les graphiques sur toutes les semaines en prenant les valeurs de la page où il se trouve ?

Merci d’avance.

Bonjour,

Regarde le classeur :

https://www.swisstransfer.com/d/c09b5155-3f25-414e-9a85-324c6fecf7a1

Le code de la macro :

Sub test()
  Dim Tbl As ListObject, Sh As Worksheet, Ori As Worksheet
  Application.ScreenUpdating = False
  Set Ori = Sheets("Semaine 1")
  For Each Sh In Sheets
    If Left(Sh.Name, 7) = "Semaine" And Sh.Name <> "Semaine 1" Then
      Ori.ChartObjects(2).Copy
      Sh.Activate
      [AD6].Select
      Sh.Paste
      With Sh.ChartObjects(1).Chart
        .SeriesCollection(1).Formula = Replace(.SeriesCollection(1).Formula, "Semaine 1", Sh.Name)
      End With
      Ori.ChartObjects(3).Copy
      Sh.Activate
      [AD41].Select
      Sh.Paste
      With Sh.ChartObjects(2).Chart
        .SeriesCollection(1).Formula = Replace(.SeriesCollection(1).Formula, "Semaine 1", Sh.Name)
      End With
      Ori.ChartObjects(1).Copy
      Sh.Activate
      [AD74].Select
      Sh.Paste
      With Sh.ChartObjects(3).Chart
        .SeriesCollection(1).Formula = Replace(.SeriesCollection(1).Formula, "Semaine 1", Sh.Name)
        .SeriesCollection(2).Formula = Replace(.SeriesCollection(2).Formula, "Semaine 1", Sh.Name)
      End With
    End If
  Next Sh
  Application.ScreenUpdating = True
End Sub

1 « J'aime »