Voila je dois actuellement réaliser une macro qui me ferai automatiquement une courbe en fonction de mon tableau.
-Mon tableau à toujours les mêmes dimensions.
-En abscisse mes valeurs vont de A30 à A16000
-Mes ordonnées vont de B30 à B16000, C30 à C16000 et D30 à D16000.
Vous l'aurez donc compris, mon graphique final sera composée de 3 courbes, et d'ailleurs à ce propos les courbes sont en nuage de points, mais sans les points, juste la courbe "lisse".
Donc si quelqu'un avait un didacticiel ou un truc du genre pour m'aider je vous en serait vraiment reconnaissant, car il ne me reste aucun souvenir de mes cours de VB xD
Merci, et si vous avez des questions, n'hésitez pas =)
Bon voila j'ai un code qui fonctionne mais j'aimerai corriger 2 petites imperfection.
Voici mon code :
Code:
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 09/10/2009 par #######
'
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
ActiveChart.SeriesCollection(1).Values = "='trial force test Inconel DA_2'!$B$24:$B$18023"
ActiveChart.SeriesCollection(1).Name = "=""Fx"""
ActiveChart.SeriesCollection(2).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
ActiveChart.SeriesCollection(2).Values = "='trial force test Inconel DA_2'!$C$24:$C$18023"
ActiveChart.SeriesCollection(2).Name = "=""Fy"""
ActiveChart.SeriesCollection(3).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
ActiveChart.SeriesCollection(3).Values = "='trial force test Inconel DA_2'!$D$24:$D$18023"
ActiveChart.SeriesCollection(3).Name = "=""Fz"""
ActiveChart.Location Where:=xlLocationAsNewSheet
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Results"
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
End With
End Sub
Mes 2 problèmes :
Je sélectionne les valeurs sur la feuille "trial force test Inconel DA_2", le truc c'est que j'ai des vingtaine de feuille avec après le DA des 1,2,3, ect. Donc quand je lance la macro sur "trial force test Inconel DA_3" et bien, ça marche pas :/ Y a t-il moyen de faire une variable ou quelque chose du genre pour que cela marche quelque soit le numéro du fichier?
Mon second problème viens de "ActiveChart.ChartType = xlXYScatterSmoothNoMarkers", en effet, je demande une courbe lissé sans points, et il me met des points sur mes courbes à chaque fois cet enfoiré, alors avec 18000 valeurs * 3 colonnes, ça fait un peu trop de points à mon gout... Une solution pour ce problème?
P.S : je suis sur Excel 2007.
Merci d'avance
Dernière modification par yoda1234 ; 10/10/2009 à 06h40.
Motif: anonymisation
09/10/2009 - 21h11
sitalgo
Date d'inscription
juin 2006
Localisation
La Réunion
Messages
3 734
Re : [excel] Macro pour graphique.
B'jour,
Au lieu de mettre
Code:
ActiveChart.SeriesCollection(1).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
Reste plus que la solution à ma deuxième question et c'est nickel
11/10/2009 - 06h44
sitalgo
Date d'inscription
juin 2006
Localisation
La Réunion
Messages
3 734
Re : [excel] Macro pour graphique.
Je ne sais pas, il faut lire 4 tonnes de documentation pour avoir une malheureuse syntaxe. Essaie d'appliquer chartype sur les séries au lieu du graphe.
Mais si t'as l'gosier, Qu'une armure d'acier, Matelasse. Brassens, Le bistrot.
11/10/2009 - 16h54
Lordstan
Date d'inscription
septembre 2009
Âge
24
Messages
24
Re : [excel] Macro pour graphique.
Héhé oui j'imagine pour la doc...
Je vais essayer ce que tu as dis, au pire si ça marche pas je ferai ça à la main ça prend 3s.
Merci à tous encore, bye
12/10/2009 - 11h49
Stan_94
Date d'inscription
février 2006
Localisation
Val de Marne
Âge
42
Messages
217
Re : [excel] Macro pour graphique.
Bonjour,
puisque tu peux faire la manipulation à la main, tu peux donc enregistrer une macro de cela et insérer le code dans ton programme VBA, non ?
13/10/2009 - 15h26
Lordstan
Date d'inscription
septembre 2009
Âge
24
Messages
24
Re : [excel] Macro pour graphique.
Envoyé par Stan_94
Bonjour,
puisque tu peux faire la manipulation à la main, tu peux donc enregistrer une macro de cela et insérer le code dans ton programme VBA, non ?
Ce de là que je suis partit, mais bon c'est vraiment pas top, j'ai du apporter pas mal de correction, c'est pour ces corrections que j'avais besoins d'aide ici
15/10/2009 - 21h12
Lordstan
Date d'inscription
septembre 2009
Âge
24
Messages
24
Re : [excel] Macro pour graphique.
Envoyé par sitalgo
B'jour,
Au lieu de mettre
Code:
ActiveChart.SeriesCollection(1).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"