Graphique excel, problème avec range

Résolu
cs_vousvous Messages postés 35 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 24 août 2005 - 3 août 2005 à 15:29
cs_vousvous Messages postés 35 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 24 août 2005 - 3 août 2005 à 16:19
salut,

j'ai utilisé l'enregistreur de macro pour voir comment on crée un graphique. J'obtiens une des lignes suivante concernant la source des données :

ActiveChart.SetSourceData Source:=Sheets("Tableau1").Range("A1:F29")

Seulement, la source des données comporte un nombre de ligne variables et j'aurais voulu changer la source des données en écrivant :

ActiveChart.SetSourceData Source:= Sheets("Tableau1").Range(cells(1,1),cells(derniereLigne, derniereColonne))

Mais j'ai un message d'erreur...

Merci si vous pouvez m'aider.

6 réponses

cs_Talere Messages postés 102 Date d'inscription vendredi 29 mars 2002 Statut Membre Dernière intervention 14 février 2013
3 août 2005 à 16:15
Ce doit être un problème de pointage ...

Dim ma_feuille as Object ' Définit un pointeur vers un objet (attention, définir ma_feuille en tant que "Sheet" ne marche pas)

Set ma_feuille=ThisWorkBook.Sheets("Tableau1") 'on oriente ma_feuille vers la feuille Excel intitulé "Tableau1" du classeur ou se trouve la macro

derniereLigne=10
derniereColonne=10

ActiveChart.SetSourceData Source:= ma_feuille.Range(ma_feuille.cells(1,1),ma_feuille.cells(derniereLigne, derniereColonne)) 'la source de données pointe automatiquement vers la plage de cellules commencant à (1,1) et se terminant à (derniereLigne, derniereColonne)
3
cs_Talere Messages postés 102 Date d'inscription vendredi 29 mars 2002 Statut Membre Dernière intervention 14 février 2013
3 août 2005 à 15:57
Quel est ton message d'erreur ?
0
cs_vousvous Messages postés 35 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 24 août 2005
3 août 2005 à 16:05
le message c'est :

la méthode cells pour l'objet _global a échoué...
0
Sensei01 Messages postés 94 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 27 juin 2006
3 août 2005 à 16:11
Sensei01

Es tu sur des valeurs inscrite dans derniereligne et dernierecolonne ? parce que si tu essaie d'atteindre une cellule inexistante, ca ne peux pas marcher

besoin de plus d'info ...

/******** Sans audance pas de gloire !! ********/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sensei01 Messages postés 94 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 27 juin 2006
3 août 2005 à 16:19
Sensei01
pour determiner automatiquement les dernière ligne et colonne :
Dim rowcount As Long
rowcount = ma_feuille.UsedRange.Rows.Count

Dim collumncount As Long
collumncount = ma_feuille.UsedRangeCollumns.Count

/******** Sans audance pas de gloire !! ********/
0
cs_vousvous Messages postés 35 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 24 août 2005
3 août 2005 à 16:19
Merci ça marche.

et j'ai essayé autre chose (en me calquant sur ta méthode) et ça marche aussi :

ActiveChart.SetSourceData Source : = sheets("Tableau1").range(worksheets("Tableau1").cells(1,1),worksheets("Tableau1").cells(derniereLigne,derniereColonne))
0
Rejoignez-nous