Appliquer une échelle axe sur tous les graphiques en VBA

jojo2006

XLDnaute Occasionnel
Bonjour à tout le forum !

J'ai environ 60 graphiques sur une feuille excel.

Je souhaiterai changer "régulièrement" l'échelle sur l'axe des ordonnées maxi et mini et l'appliquer sur tous les graphiques.

j'ai vu que la syntaxe était:

VB:
Sub testgraph()
    ActiveChart.Axes(xlValue).Select
    ActiveChart.Axes(xlValue).MinimumScale = -0.04
    ActiveChart.Axes(xlValue).MaximumScale = 0.2
End Sub


La question est comment boucler pour selectionner chaque graphe et appliquer les valeurs d'axe ? Comment puis je connaitre le nom de chaque graphique ?

Merci d'avance pour votre aide.


Cordialement,
jojo
 

CB60

XLDnaute Barbatruc
bonjour
quelque chose comme ça:
VB:
Sub BoucleGraphique()
Dim graph As Object, nbgraph As Long
nbgraph = ActiveSheet.ChartObjects.Count
For Each graph In ActiveSheet.ChartObjects
 graph.Activate
    ActiveChart.Axes(xlValue).Select
    ActiveChart.Axes(xlValue).MinimumScale = -0.04
    ActiveChart.Axes(xlValue).MaximumScale = 0.2
Next graph
End Sub
 

CB60

XLDnaute Barbatruc
bonjour
quelque chose comme ça:
VB:
Sub BoucleGraphique()
Dim graph As Object, nbgraph As Long
nbgraph = ActiveSheet.ChartObjects.Count
For Each graph In ActiveSheet.ChartObjects
graph.Activate
    ActiveChart.Axes(xlValue).Select
    ActiveChart.Axes(xlValue).MinimumScale = -0.04
    ActiveChart.Axes(xlValue).MaximumScale = 0.2
Next graph
End Sub
Mais pour moi, tu devrais mettre ton mini et maxi sur ta feuille je pense que se serais plus simple
 

job75

XLDnaute Barbatruc
Bonjour jojo2006, CB60,

Il est inutile d'activer ou sélectionner :
VB:
Sub BoucleGraphique()
Dim graph As Object
For Each graph In ActiveSheet.ChartObjects
    graph.Chart.Axes(xlValue).MinimumScale = -0.04
    graph.Chart.Axes(xlValue).MaximumScale = 0.2
Next graph
End Sub
A+
 

Statistiques des forums

Discussions
312 165
Messages
2 085 883
Membres
103 014
dernier inscrit
moimoi31