VBA Excel graphique

Fermé
mimin - 20 mars 2011 à 17:08
ccm81 Messages postés 10907 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 janvier 2025 - 20 mars 2011 à 18:46
Bonjour,

qqun peut il m'expliquer svp pourquoi ce bout de ligne de code me sors un message d'erreurs:

Private Sub CommandButton1_Click()

Sheets(2).Select
Sheets(2).Range("A:A").End(xlDown).Select
i = ActiveCell.Row
Sheets(3).Select
ChartObjects("Chart 8").Activate
ActiveChart.ChartArea.Select
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range(Cells(2, 1), Cells(i, 3))

End Sub


l'erreur est surement au nivo du range, quand je modifie mon range par range("A2:C15") ca marche.
Mais je voudrais comprendre pq? et y'a til un moyen d'arranger ca, car j'ai besoin d'introduire la variable i.



Merci d'avance







n
A voir également:

1 réponse

ccm81 Messages postés 10907 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 janvier 2025 2 430
Modifié par ccm81 le 20/03/2011 à 18:41
bonjour,

1. je crois qu'il manque un .Chart après ActiveChart, mais je crois que ce qui ne lui plait pas c'est que la plage et le graphique ne sont pas dans la feuille

2. si i, la plage de données et le graphique sont dans des feuilles différentes, un exemple de procedure a mettre dans un module et à appeler par un bouton (la plage est definie en style A1)

Public Sub graph()
  i = Sheets(2).Range("A:A").End(xlDown).Row
  Set plage = Sheets(3).Range("A" & 2 & ":C" & i)
  With Sheets(1).ChartObjects(1).Chart
    .SetSourceData Source:=plage
  End With
End Sub


bonne suite
0
ccm81 Messages postés 10907 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 janvier 2025 2 430
20 mars 2011 à 18:46
post 1 modifé pour tenir compte du fait que les feuilles plage et graphique sont différentes
0