Philippe63000
XLDnaute Junior
Bonsoir,
J'essaie de créer un graphique. Et c'est d'autant plus difficile que les macros n'enregistrent pas toutes les actions faites au clavier!!
Voilà j'ai tout de même écrit quelque chose que voici:
Sub courbe4()
Dim Graph As ChartObject
With ActiveWorkbook.Worksheets(1)
Dim TD(30, 2) As Variant
For i = 1 To 30
For j = 1 To 2
TD(i, j) = i
Next
Next
Dim tableau() As Integer, tableau2() As Double, Tableau3() As Double
'Création du tableau pour les Abscisses
For i = 1 To UBound(TD)
tableau2(i) = TD(i, 2)
tableau(i) = i
Tableau3(i) = 5
Next i
' ajout du graphe et définution de ses dimensions et position(
'-----------------------------------------------------------
Set Graph = .ChartObjects.Add(70, 50, 700, 330)
End With
With Graph.Chart
' pour tracer la courbe valeurs de X et valeurs de Y
'-----------------------------------------------------
'.SetSourceData Worksheets(1).Range("A1:B10")
.ChartArea.Border.LineStyle = xlDashDotDot
.ChartArea.Border.Weight = xlMedium
.HasTitle = True
.ChartTitle.Text = "Débits" & Chr(13) & site & " " & annee_etudiee
.ChartTitle.Characters(0, 9).Font.Bold = True
.ChartType = xlLine
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = tableau() 'Abscisses
' .SeriesCollection(1).Values = tableau2() 'Ordonnées
.SeriesCollection(2).Values = Tableau3() 'Ordonnées
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
'couleur de l'intérieur du graphe
.PlotArea.Interior.ColorIndex = 2
.Axes(xlValue).MajorGridlines.Border.LineStyle = xlDot
.ChartArea.Font.Size = 12
.Deselect
End With
End Sub
Ma première question : Comment puis-je passer les données de TD(i,2) à l'axe des ordonnées . Je suppose que ce que j'ai fait ne marche pas car les tableaux TD et Tableau2 ne sont pas de m^me dimension.
Ma deuxième question : Le contour du graphique est transparent. Je voudrais qu'il ne le soit pas.
Il semblerait que j'arrive à agir sur l'aire u tracé mais je ne trouve rien sur le contour.
Ma troisième question : En lançant la routine ci-dessus et en faisant abstraction des erreurs , une courbe se forme et le mot 'courbe' apparaît au dessus du graphique . Il semblerait que ce soit une forme. Pourriez-vous m'aider à m'en débarasser.
Merci d'avance pour votre aide sur les trois points ci-dessus.
Cordialement
J'essaie de créer un graphique. Et c'est d'autant plus difficile que les macros n'enregistrent pas toutes les actions faites au clavier!!
Voilà j'ai tout de même écrit quelque chose que voici:
Sub courbe4()
Dim Graph As ChartObject
With ActiveWorkbook.Worksheets(1)
Dim TD(30, 2) As Variant
For i = 1 To 30
For j = 1 To 2
TD(i, j) = i
Next
Next
Dim tableau() As Integer, tableau2() As Double, Tableau3() As Double
'Création du tableau pour les Abscisses
For i = 1 To UBound(TD)
tableau2(i) = TD(i, 2)
tableau(i) = i
Tableau3(i) = 5
Next i
' ajout du graphe et définution de ses dimensions et position(
'-----------------------------------------------------------
Set Graph = .ChartObjects.Add(70, 50, 700, 330)
End With
With Graph.Chart
' pour tracer la courbe valeurs de X et valeurs de Y
'-----------------------------------------------------
'.SetSourceData Worksheets(1).Range("A1:B10")
.ChartArea.Border.LineStyle = xlDashDotDot
.ChartArea.Border.Weight = xlMedium
.HasTitle = True
.ChartTitle.Text = "Débits" & Chr(13) & site & " " & annee_etudiee
.ChartTitle.Characters(0, 9).Font.Bold = True
.ChartType = xlLine
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = tableau() 'Abscisses
' .SeriesCollection(1).Values = tableau2() 'Ordonnées
.SeriesCollection(2).Values = Tableau3() 'Ordonnées
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
'couleur de l'intérieur du graphe
.PlotArea.Interior.ColorIndex = 2
.Axes(xlValue).MajorGridlines.Border.LineStyle = xlDot
.ChartArea.Font.Size = 12
.Deselect
End With
End Sub
Ma première question : Comment puis-je passer les données de TD(i,2) à l'axe des ordonnées . Je suppose que ce que j'ai fait ne marche pas car les tableaux TD et Tableau2 ne sont pas de m^me dimension.
Ma deuxième question : Le contour du graphique est transparent. Je voudrais qu'il ne le soit pas.
Il semblerait que j'arrive à agir sur l'aire u tracé mais je ne trouve rien sur le contour.
Ma troisième question : En lançant la routine ci-dessus et en faisant abstraction des erreurs , une courbe se forme et le mot 'courbe' apparaît au dessus du graphique . Il semblerait que ce soit une forme. Pourriez-vous m'aider à m'en débarasser.
Merci d'avance pour votre aide sur les trois points ci-dessus.
Cordialement