VB: adresse de feuille
Fermé
fred
-
4 juil. 2005 à 16:58
Armojax Messages postés 1860 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 2 octobre 2024 - 5 juil. 2005 à 10:59
Armojax Messages postés 1860 Date d'inscription mercredi 19 janvier 2005 Statut Membre Dernière intervention 2 octobre 2024 - 5 juil. 2005 à 10:59
A voir également:
- VB: adresse de feuille
- Vb - Télécharger - Langages
- Vb cable - Télécharger - Audio & Musique
- Vb download - Télécharger - Langages
- Vb runtime - Télécharger - Divers Utilitaires
- Vb 2008 - Télécharger - Langages
6 réponses
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
4 juil. 2005 à 22:29
4 juil. 2005 à 22:29
Hello fred,
Dur, dur...
Je modifie couramment les SeriesCollection(n).Values, mais jamais en changeant de feuille. Et là, comme toi, je tombe sur un os, et j'aime pas ça.
D'où l'hypothèse suivante, qui ne me satisfait pas pour le moment.
A la création d'un graphique, Excel ne propose que deux solutions :
- soit loger le graphique dans la même feuille de calcul que celle où se trouvent les données,
- soit le loger dans une feuille graphique (Chart, pas WorkSheet).
Ce qui pourrait vouloir dire, dans ton cas, qu'Excel considère que les données sont à prendre forcément dans la feuille où se trouve le graphique.
Je vais continuer à creuser ce truc qui m'agace.
Si quelqu'un a des tuyaux sur la question, il est le bienvenu.
Dur, dur...
Je modifie couramment les SeriesCollection(n).Values, mais jamais en changeant de feuille. Et là, comme toi, je tombe sur un os, et j'aime pas ça.
D'où l'hypothèse suivante, qui ne me satisfait pas pour le moment.
A la création d'un graphique, Excel ne propose que deux solutions :
- soit loger le graphique dans la même feuille de calcul que celle où se trouvent les données,
- soit le loger dans une feuille graphique (Chart, pas WorkSheet).
Ce qui pourrait vouloir dire, dans ton cas, qu'Excel considère que les données sont à prendre forcément dans la feuille où se trouve le graphique.
Je vais continuer à creuser ce truc qui m'agace.
Si quelqu'un a des tuyaux sur la question, il est le bienvenu.
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
4 juil. 2005 à 23:00
4 juil. 2005 à 23:00
Y'a un truc quelque part... A la main on y arrive, donc y'a forcément un moyen de le dire.
Je verrai ça demain.
Je verrai ça demain.
Kobaya
Messages postés
282
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
10 janvier 2008
214
4 juil. 2005 à 23:09
4 juil. 2005 à 23:09
salut Fred,
j'ai simplement créé ce code avec l'enregistreur de macro, et ça fonctionne chez moi...
ActiveChart.SeriesCollection(1).Values = "=Feuil1!R2C1:R2C4"
j'ai simplement créé ce code avec l'enregistreur de macro, et ça fonctionne chez moi...
ActiveChart.SeriesCollection(1).Values = "=Feuil1!R2C1:R2C4"
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
4 juil. 2005 à 23:21
4 juil. 2005 à 23:21
Ok.
Et as-tu essayé la suite : dire que maintenant les données sont dans une autre feuille, avec une plage définie par un End(xlUp) ?
Et as-tu essayé la suite : dire que maintenant les données sont dans une autre feuille, avec une plage définie par un End(xlUp) ?
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
5 juil. 2005 à 08:07
5 juil. 2005 à 08:07
Bonjour fred,
Voilà une proposition :
Dans la mesure où structure de la plage de données, en passant de la feuille "Retour" à "Tableau", est conservée, il n'y a pas besoin de redéfinir les SeriesCollection.
J'ai mis Range("H4:K" & Ligne), (H4 et non pas I4) pour mon test, car j'avais des étiquettes d'abscisses en colonne H, et les données en colonnes I, J, K, donc la plage source partait bien de H4. Tu adaptes...
Regarde si ça fait ce que tu veux. Pour moi ça a l'air OK.
Voilà une proposition :
Sub GRAPH_suivi_eco() Dim Ligne As Long Ligne = Sheets("Tableau").Range("I1000").End(xlUp).Row ActiveSheet.ChartObjects("Graphique 5").Activate ActiveChart.SetSourceData Source:=Sheets("Tableau").Range("H4:K" & Ligne), PlotBy:=xlColumns End SubEn utilisant SetSourceData, je pense que ça marche. En tout cas, le test que je viens de faire fonctionne.
Dans la mesure où structure de la plage de données, en passant de la feuille "Retour" à "Tableau", est conservée, il n'y a pas besoin de redéfinir les SeriesCollection.
J'ai mis Range("H4:K" & Ligne), (H4 et non pas I4) pour mon test, car j'avais des étiquettes d'abscisses en colonne H, et les données en colonnes I, J, K, donc la plage source partait bien de H4. Tu adaptes...
Regarde si ça fait ce que tu veux. Pour moi ça a l'air OK.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut armojax!
g essayé ta proc c bon ça prend bien les données dans la bonne feuille. Par contre mes étiquettes sont dans la colonne A et mes ordonnées sont respectivement dans les colonnes I J et K j'arrive pas à écrire ma ligne source.
g essayé ta proc c bon ça prend bien les données dans la bonne feuille. Par contre mes étiquettes sont dans la colonne A et mes ordonnées sont respectivement dans les colonnes I J et K j'arrive pas à écrire ma ligne source.
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
5 juil. 2005 à 10:39
5 juil. 2005 à 10:39
OK. Donc, ta ligne devient :
ActiveChart.SetSourceData Source:=Sheets("Tableau").Range("A4:A" & Ligne & ", I4:K" & Ligne), PlotBy:=xlColumns
carrément ça marche nickel !!!
merci beaucoup armojax! g bossé sur un projet de tableau de bord pour la gestion de projet en batiment ces 4 derniers mois. Mon stage touche à sa fin et je voulais te remercier car sans ton aide précieuse et celle des autres programmeurs je serais jamais venu à bout des macros que je n'avais jamais manipulé avant.
Merci et bonne continuation. ;-)
merci beaucoup armojax! g bossé sur un projet de tableau de bord pour la gestion de projet en batiment ces 4 derniers mois. Mon stage touche à sa fin et je voulais te remercier car sans ton aide précieuse et celle des autres programmeurs je serais jamais venu à bout des macros que je n'avais jamais manipulé avant.
Merci et bonne continuation. ;-)
Armojax
Messages postés
1860
Date d'inscription
mercredi 19 janvier 2005
Statut
Membre
Dernière intervention
2 octobre 2024
1 528
5 juil. 2005 à 10:59
5 juil. 2005 à 10:59
Bonne fin de stage, fred, et peut-être de bonnes vacances à suivre ?
Ajx.
Ajx.