Imposer données abscisse sur Graphique en VBA

Bonjour,

Sur le fichier joint le graphique de la feuille "GRAPHIQUEOBTENU" à une zone variable en ligne et colonne, je mets donc à jour la source du graphique avec la macro

Sub zone()
    ActiveSheet.ChartObjects("Graphique 1").Activate
    ActiveChart.SetSourceData Source:=Range("GLOBAL")
End Sub

Jusque là pas de problème, mais par défaut il me remet à chaque fois les sites en abscisse alors que je voudrais les dates comme sur la feuille "GRAPHIQUESOUHAITE"

J'ai essayer d'enregistrer la macro pour intervertir les axes, mais ça ne marche pas et mes recherches sur le Net non pas abouties.

Est-ce que vous auriez une solution ?

Merci d'avance pour votre aide

Patrick

42graphiquevba.xlsm (68.02 Ko)

Bonjour,

essaie ainsi :

Sub zone()
Dim objchart As ChartObject
    Set objchart = ActiveSheet.ChartObjects("Graphique 1")
    objchart.Chart.SetSourceData Source:=Range("GLOBAL"), PlotBy:=xlRows
End Sub

Bonjour à tous

Ton graphique correspond à une plage nommée. Si le graphique est déjà lié à cette source, le code ne sert à rien...

Bonjour à tous

Merci Jean Eric je viens d'essayer ta proposition qui marche.

Merci beaucoup

Bonjour à tous

Ton graphique correspond à une plage nommée. Si le graphique est déjà lié à cette source, le code ne sert à rien...

Merci 8Chris pour ton intervention, effectivement j'était persuadé quand mettant une zone nommée dans "Plage de donnée du graphique" je n'aurais pas de problème, en faite ça ne fonctionne pas correctement car Excel renomme la zone en =ANALYSE!$A$1:$CG$7 alors que je lui est donné au départ =Tableau1[#Tout]

Et je ne suis pas arriver à insérer manuellement la plage nommée GLOBALE avec =GraphiqueVBA.xlsm!GLOBALE

Re

Même si le graphique affiche =ANALYSE!$A$1:$CG$7, du moment que le nom reste associé à =Tableau1[#Tout] , le graphique suit l'évolution du tableau donc je persiste à dire que VBA ne sert pas.

C'est l'un des nombreux intérêt des tableaux structurés...

Re Merci 78chris pour ta réponse,

mais il doit y avoir quelque chose que je fais mal car ça plante. Je vais persister dans mes recherches.

RE

Si pas de VBA pas de plantage : je ne comprends donc pas ton souci

Bonjour à tous,

Effectivement je n'ai pas compris, moi non plus, pourquoi ça a planté plusieurs fois, car je viens de refaire la manip sans vba plusieurs fois et pas de plantage.

Si je rencontre à nouveau ce problème, je transmettrais mon fichier avec le problème.

Merci à tous pour votre réactivité.

Rechercher des sujets similaires à "imposer donnees abscisse graphique vba"