Macro pour construction de graphique et boucle for
Laetitiayao
Messages postés
54
Date d'inscription
Statut
Membre
Dernière intervention
-
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'exécute une macro qui ne marche pas depuis ce matin et j'ai vraiment besoin d'aide.voici de facon simplifiée ce que je souhaite faire.
faire une représentation des séries présentes sur ma feuille "calcul" (colonne en jaune) en fonction de la date( colonne en gris) dans le graphique inséré dans ma feuille "ETF1", de sorte qu'a chaque fois que ma macro effectue un choix dans ma liste déroulante en V8 le graphique se met à jour automatiquement.
J'ai écris le code suivant mais il ne se pase rien:
Pourriez - vous m'éclairer svp?
merci de vos réponses
J'exécute une macro qui ne marche pas depuis ce matin et j'ai vraiment besoin d'aide.voici de facon simplifiée ce que je souhaite faire.
faire une représentation des séries présentes sur ma feuille "calcul" (colonne en jaune) en fonction de la date( colonne en gris) dans le graphique inséré dans ma feuille "ETF1", de sorte qu'a chaque fois que ma macro effectue un choix dans ma liste déroulante en V8 le graphique se met à jour automatiquement.
J'ai écris le code suivant mais il ne se pase rien:
Sub update6() Dim S3 As Worksheet Dim S4 As Worksheet Dim i, j, j1, j2, k As Long Set S3 = Sheets("Calcul") Set S4 = Sheets("ETF 1") For j = 1039To 1338 Step 6 S4.Cells(8, 22) = S3.Cells(2, j) ActiveChart.ChartType = xlLine ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(1).Values = S3.Range(S3.Cells(7, j), S3.Cells(S3.Cells(3, 1039), j)) ActiveChart.SeriesCollection(1).XValues =S3.Range(S3.Cells(7,1038), S3.Cells(S3.Cells(3, 1038), j)) Next j End Sub
Private Sub worksheet_change(ByVal Target As Range) Dim S3, S4 As Worksheet Set S3 = Sheets("calcul") Set S4 = Sheets("ETF 1") If Target.Address = S4.Cells(8, 22) Then Call update6 End If End Sub
Pourriez - vous m'éclairer svp?
merci de vos réponses
A voir également:
- Macro pour construction de graphique et boucle for
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Changer de carte graphique - Guide
- Graphique sparkline - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
as-tu bien merci "option explicit" en début de chaque module?
qu'essaies-tu de faire en comparant Target.Address à S4.Cells(8, 22)?
as-tu bien merci "option explicit" en début de chaque module?
qu'essaies-tu de faire en comparant Target.Address à S4.Cells(8, 22)?
Bonjour à tous les deux
Peux tu envoyer un bout de ton fichier sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".
Cdlmnt
Peux tu envoyer un bout de ton fichier sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".
Cdlmnt
Bonjour ci joint mon fichier avec les modifications suggérée
https://www.cjoint.com/c/HHFaEZSXKuB
Merci
https://www.cjoint.com/c/HHFaEZSXKuB
Merci
Bonjour,
Vous avez des appels récursifs sur votre module update6 (vois pas pourquoi pour le moment) , en ajoutant application.enableevents false avant l'appel et true apres, j'ai une erreur cette ligne
Je ne comprends pas le ,j a la fin......!!!!!!!!!!!!!!!!!!!!!
Vous avez des appels récursifs sur votre module update6 (vois pas pourquoi pour le moment) , en ajoutant application.enableevents false avant l'appel et true apres, j'ai une erreur cette ligne
ActiveChart.SeriesCollection(1).Values = S3.Range(S3.Cells(7, j), S3.Cells(S3.Cells(3, 1038), j))
Je ne comprends pas le ,j a la fin......!!!!!!!!!!!!!!!!!!!!!
les appels récursifs sont sans doute causés par le fait que le code appelé par worksheet_change modifie le contenu de la feuille, ce qui appelle à nouveau worksheet_change.
Ce qui correspond à la phrase "a chaque fois que ma macro effectue un choix dans ma liste déroulante en V8 le graphique se met à jour automatiquement". j'ai l'intuition que il n'y a pas de raison d'utiliser worksheet_change pour cet exercice.
Ce qui correspond à la phrase "a chaque fois que ma macro effectue un choix dans ma liste déroulante en V8 le graphique se met à jour automatiquement". j'ai l'intuition que il n'y a pas de raison d'utiliser worksheet_change pour cet exercice.
oui oui, target address est la cellule qui comprend ma liste déroulante dans laquelle ma macro doit faire des choix les uns apres les autres . je veux juste dire que c'est dans cette cellule que les changements doivent s'effectuer je ne sais pas si je fais bien?
ou bien
ainsi, update6 sera appelé chaque fois que Cells(8, 22) change (si tu as mis la fonction dans la feuille ETF 1).