Besoin d'aide macro pour modifier graphique
Marie
-
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
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!
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:
- Besoin d'aide macro pour modifier graphique
- Modifier dns - Guide
- Modifier liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Changer carte graphique - Guide
- Vous avez besoin d'une autorisation de la part de système pour modifier ce dossier - Guide
1 réponse
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
Cdlmnt
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