Besoin d'aide macro pour modifier graphique

Fermé
Marie - 22 mai 2015 à 16:25
ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 - 23 mai 2015 à 11:13
Bonjour,
J'ai besoin d'aide car j'aimerai faire une macro pour excel qui modifie l'echelle de mes graphiques en fonction d'une valeur entree dans une autre feuille.

Je vous explique, la premiere feuille qui s'appelle input, et ensuite les feuilles 1,2,3 .... 50 sont des graphiques.
Je voudrais que s'il est ecrit 1 dans la cellule (i,2) de la feuille input, l'echelle horizontalle de mon graphique feuille i aille de 0 a 100 et l'echelle verticale passe en log.
J'ai donc essayé le code suivant:

Sub Macro1()
'
' Macro1 Macro
'
Sheets("Input").Select

For di = 1 To 10

If Cells(di, 2) = 1 Then
Sheets(di + 1).Select

ActiveSheet.ChartObjects("Chart 2").Activate
ActiveChart.Axes(xlCategory).Select
ActiveChart.Axes(xlCategory).MaximumScale = 160
ActiveChart.Axes(xlValue).Select
ActiveChart.Axes(xlValue).ScaleType = xlLogarithmic
End If

Next di

End Sub



Seulement ca ne marche pas... Je crois que c'est un probleme de chart.select mais je n'arrive pas a le solutionner.
Quelquún a une idée?

Merci beaucoup!
A voir également:

1 réponse

ccm81 Messages postés 10855 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 29 avril 2024 2 404
Modifié par ccm81 le 23/05/2015 à 11:28
Bonjour

Un feuille-graphique ne contient qu'un seul graphique
Une fois la feuille sélectionnée, on y accède (au graphique) avec ActiveChart
Ici les feuilles-graphiques sont nommées 1, 2, 3, on modifie l'échelle verticale en échelle Log

Sub OK()
Dim nuf As Long, nomf As String
For nuf = 1 To 3
  nomf = Trim(Str(nuf))
  Sheets(nomf).Select
  ActiveChart.Axes(xlValue).ScaleType = xlLogarithmic
Next nuf
End Sub

Cdlmnt
0