bonjour
j'espere que cet exemple pourra t'aider
tu te places sur chaque feuille contenant un tableau puis tu lances la procedure
il te restera à l'adapter pour ton projet , nottament pour eventuellement boucler sur les 10 feuilles
Sub creerGraphiqueFeuille()
Dim i As Byte
Dim j As Integer, Debut As Integer, Fin As Integer
Dim Plage As Range, Plage2 As Range
Dim nomFeuille As String
nomFeuille = ActiveSheet.Name
'Range('B27') pour un tableau potentiel de 31 jours
Fin = Sheets(ActiveSheet.Name).Range('B27').End(xlUp).Ro w
Debut = Sheets(ActiveSheet.Name).Cells(Fin, 2).End(xlUp).Row
Set Plage = ActiveSheet.Range('A' & Debut & ':A' & Fin)
Application.ScreenUpdating = False
Charts.Add
ActiveChart.Location Where:=xlLocationAsObject, Name:=nomFeuille
For i = 0 To 6 'nombre de séries dans le graphique
ActiveChart.SeriesCollection.NewSeries
Set Plage2 = _
Sheets(nomFeuille).Range(Sheets(nomFeuille).Cells( Debut, i + 2).Address & ':' & _
Sheets(nomFeuille).Cells(Fin, i + 2).Address)
ActiveChart.SeriesCollection(i + 1).Values = Plage2
If i = 0 Then ActiveChart.SeriesCollection(i + 1).XValues = Plage
ActiveChart.SeriesCollection(i + 1).Name = Sheets(nomFeuille).Cells(3, i + 2) 'nom de la courbe
ActiveChart.SeriesCollection(i + 1).Border.ColorIndex = i + 4
ActiveChart.ChartType = xlLine
Next i
ActiveChart.Axes(xlCategory).TickLabels.Orientatio n = xlUpward
ActiveChart.Axes(xlValue).HasMajorGridlines = False
Application.ScreenUpdating = True
End Sub
bonne journée
MichelXld
Message édité par: michelxld, à: 19/02/2006 06:55