Modifier paramètre d'un graphique
Résolu/Fermé
totaljim
-
8 déc. 2014 à 11:39
cs_Le Pivert Messages postés 7883 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 18 mars 2023 - 11 déc. 2014 à 11:12
cs_Le Pivert Messages postés 7883 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 18 mars 2023 - 11 déc. 2014 à 11:12
A voir également:
- Modifier paramètre d'un graphique
- Paramètre s'arrête systématiquement - Forum Samsung
- Modifier pdf - Guide
- Modifier liste déroulante excel - Guide
- Netflix paramètre compte - Guide
- Modifier extension fichier - Guide
7 réponses
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
8 déc. 2014 à 15:15
8 déc. 2014 à 15:15
Bonjour,
Ce code parcourt tous les graphiques de la feuille et les redimensionne, essaie de t'en inspirer pour le compléter suivant tes besoins:
Ce code parcourt tous les graphiques de la feuille et les redimensionne, essaie de t'en inspirer pour le compléter suivant tes besoins:
Dim i As Integer For i = 1 To Worksheets(1).ChartObjects.Count With ActiveSheet.Shapes(i) .Height = 165.75 .Width = 300 End With Next i
Le soucis, c'est que je créé tout mes graphiques et en fonction du coefficient de régression de leur régression polynomiale, je les place sur ma feuille (du plus grand au plus petit).
J'ai donc besoin de savoir quelle courbe est laquelle :D
D'ou l'interet de mettre le numéro ou le nombre du graphique dans une cellule !
Le soucis c'est que je ne suis pas sur qu'excel commence sa numérotation a 1 si l'on a déja fais des graphiques sur une autre feuille par exemple
J'ai donc besoin de savoir quelle courbe est laquelle :D
D'ou l'interet de mettre le numéro ou le nombre du graphique dans une cellule !
Le soucis c'est que je ne suis pas sur qu'excel commence sa numérotation a 1 si l'on a déja fais des graphiques sur une autre feuille par exemple
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
8 déc. 2014 à 18:15
8 déc. 2014 à 18:15
Voici le code pour récupérer le nom de tes graphiques:
Ensuite avec ces noms tu peux faire ce que tu veux comme ci-dessous, en adaptant ce code avec le nom de tes graphique et en y ajoutant le positionnement (tu peux avoir ce code avec l'enregistreur de macro)
Bonne programmation
Dim i As Integer For i = 1 To Worksheets(1).ChartObjects.Count MsgBox ActiveSheet.Shapes(i).Name Next i
Ensuite avec ces noms tu peux faire ce que tu veux comme ci-dessous, en adaptant ce code avec le nom de tes graphique et en y ajoutant le positionnement (tu peux avoir ce code avec l'enregistreur de macro)
Dim i As Integer
For i = 1 To Worksheets(1).ChartObjects.Count
Select Case ActiveSheet.Shapes(i).Name
Case Is = "Graphique 1" 'a adapter
With ActiveSheet.Shapes("Graphique 1") 'a adapter
.Height = 165.75
.Width = 400
End With
Case Is = "Graphique 2" 'a adapter
With ActiveSheet.Shapes("Graphique 2") 'a adapter
.Height = 150
.Width = 300
End With
Case Is = "Graphique 3" 'a adapter
With ActiveSheet.Shapes("Graphique 3") 'a adapter
.Height = 75
.Width = 200
End With
'etc.....
End Select
Next i
Bonne programmation
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
9 déc. 2014 à 08:14
9 déc. 2014 à 08:14
La position du graphique est donné par rapport au haut et gauche de la feuille
Tu peux te servir des données saisies dans tes cellules comme ceci:
Tu peux te servir des données saisies dans tes cellules comme ceci:
'on saisit les données
Range("A1").Value = 10 'position top
Range("A2").Value = 20 ' position left
With ActiveSheet.Shapes("Graphique 1") 'a adapter
.Height = 165.75
.Width = 300
.Top = Range("A1").Value
.Left = Range("A2").Value
End With
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci de ton aide ! probleme résolu :)
J'ai un autre soucis qui est peut etre lié aux graphiques
Quand j'exécute mon programme en pas-à-pas tout marche pour le mieux dans le meilleur des mondes !
Et quand je passe en exécution automatique ... le programme ne me met rien dans la variable rdeux :
Une idée d'où peut venir le problème ?
Dois je refaire un autre sujet ?
J'ai un autre soucis qui est peut etre lié aux graphiques
Quand j'exécute mon programme en pas-à-pas tout marche pour le mieux dans le meilleur des mondes !
Et quand je passe en exécution automatique ... le programme ne me met rien dans la variable rdeux :
rdeux = Right(ActiveChart.SeriesCollection(1).Trendlines(ordre).DataLabel.Text, 6)
Une idée d'où peut venir le problème ?
Dois je refaire un autre sujet ?
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
9 déc. 2014 à 15:12
9 déc. 2014 à 15:12
Désole je ne vois pas. Ouvre un nouveau sujet, tu auras plus de chance.
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
11 déc. 2014 à 11:12
11 déc. 2014 à 11:12
Et si tu mettais une pause dans ton code avant la ligne, comme ceci:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sleep 2000 '2 secondes rdeux = Right(ActiveChart.SeriesCollection(1).Trendlines(ordre).DataLabel.Text, 6)