VBA-Excel: creation graphique - erreur 1004
Résolu/Fermé
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
-
Modifié par Nelly1234 le 12/09/2011 à 17:08
Heremion Messages postés 538 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 - 13 sept. 2011 à 10:49
Heremion Messages postés 538 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 - 13 sept. 2011 à 10:49
A voir également:
- VBA-Excel: creation graphique - erreur 1004
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si et excel - Guide
- Excel compter cellule couleur sans vba - Guide
13 réponses
Heremion
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
1 juin 2022
102
12 sept. 2011 à 14:35
12 sept. 2011 à 14:35
Bonjour Nelly,
Avant d'effectuer une sélection, ta page doit être activée avec le code ci-dessous :
Avant d'effectuer une sélection, ta page doit être activée avec le code ci-dessous :
Worksheets("TaFeuille").Activate
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 14:51
12 sept. 2011 à 14:51
Bonjour,
Merci pour ta réponse mais ce n'est pas ca. j'ai activé, c'est le même pb.
Nelly
Merci pour ta réponse mais ce n'est pas ca. j'ai activé, c'est le même pb.
Nelly
Heremion
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
1 juin 2022
102
12 sept. 2011 à 15:02
12 sept. 2011 à 15:02
Peux-tu joindre, grâce au site de partage de fichier cijoint.fr, ton fichier excel, qu'on puisse voir le code en entier stp?
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 15:53
12 sept. 2011 à 15:53
OK,
lien http://www.cijoint.fr/cjlink.php?file=cj201109/cijsQLQZ3O.xls
attention ce n'est pas un xls mais un cls contenant le code VBA que tu peux voir avec un quelconque éditeur
Merci
lien http://www.cijoint.fr/cjlink.php?file=cj201109/cijsQLQZ3O.xls
attention ce n'est pas un xls mais un cls contenant le code VBA que tu peux voir avec un quelconque éditeur
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
12 sept. 2011 à 16:03
12 sept. 2011 à 16:03
Bonjour,
Avez vous essayé avec une Sub plutôt qu'une Function?
Il me semble, mais je peux me tromper, qu'une Function renvoie une valeur et, par conséquent, ne peux pas générer un graph...
Avez vous essayé avec une Sub plutôt qu'une Function?
Il me semble, mais je peux me tromper, qu'une Function renvoie une valeur et, par conséquent, ne peux pas générer un graph...
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 16:16
12 sept. 2011 à 16:16
Bonjour,
J'ai mis le code de la fonction dans la Sub, mais cela donne le même pb.
J'ai mis le code de la fonction dans la Sub, mais cela donne le même pb.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
12 sept. 2011 à 16:22
12 sept. 2011 à 16:22
J'ai mis le code de la fonction dans la Sub, mais cela donne le même pb.
Donne nous ton code ainsi obtenu...
Nous ne pouvons que supposer que tu l'as bien fait, mais...
Exemple : [la partie en gras est à changer, tu peux le faire via l'enregistreur de macro, car elle créée un graph vide...]
Donne nous ton code ainsi obtenu...
Nous ne pouvons que supposer que tu l'as bien fait, mais...
Exemple : [la partie en gras est à changer, tu peux le faire via l'enregistreur de macro, car elle créée un graph vide...]
Sub traceGraphique() ' Select the range of data of the chart. Range("B3:M3").Select ' Assign the address of the selected range of cells to a variable. myrange = Selection.Address ' Assign the name of the active sheet to a variable. This line is ' used in order to allow a chart to be created on a separate chart ' sheet. mysheetname = ActiveSheet.Name ' Add a chart to the active sheet. ActiveSheet.ChartObjects.Add(125.25, 60, 301.5, 155.25).Select ' To create a chart on a separate chart sheet, remark out the ' previous line, and substitute the next line for the one above. ' Charts.Add Application.CutCopyMode = False ' This line can best be written by recording a macro, and ' modifying the code generated by the Microsoft Excel Macro ' recorder. ActiveChart.ChartWizard _ Source:=Sheets(mysheetname).Range(myrange), _ Gallery:=xlLine, Format:=4, PlotBy:=xlRows, _ CategoryLabels:=1, SeriesLabels:=1, HasLegend:=1, _ Title:="", CategoryTitle:="", _ ValueTitle:="", ExtraTitle:="" End Sub
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 16:44
12 sept. 2011 à 16:44
Bonjour,
mais ça plante sur Range("B3:M3").Select !!
mais ça plante sur Range("B3:M3").Select !!
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
12 sept. 2011 à 16:46
12 sept. 2011 à 16:46
je considère depuis quelques temps que ça plante ne comporte pas suffisamment de précision pour pouvoir apporter une réponse.
Que te dis exactement le message d'erreur?
Que te dis exactement le message d'erreur?
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 17:07
12 sept. 2011 à 17:07
Je vois que ca plante sur Range car je fais du pas à pas en déboggant et c'est là le pb avec le message: 'erreur d'execution 1004 - Erreur définie par l'application ou par l'objet'
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
Modifié par pijaku le 13/09/2011 à 08:37
Modifié par pijaku le 13/09/2011 à 08:37
Salut,
Essaye simplement ce code :
ou bien :
Essaye simplement ce code :
Sub test() Range("B3:M3").Select End Sub
ou bien :
Sub test() Sheets("Feuil1").Range("B3:M3").Select 'Si Feuil1 est ta feuille active, sinon change... End Sub
Heremion
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
1 juin 2022
102
12 sept. 2011 à 16:21
12 sept. 2011 à 16:21
ZoneDonnees n'est pas typé. Lorsque la fonction est appelée, tu es sûre que la donnée est correcte?
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 16:43
12 sept. 2011 à 16:43
Bonjour,
en fait, comme ça ne marchait pas , j'ai mis directement la zone dans Range et je n'utilise pas zoneDonnees du coup. J'ai Range en commentaire aussi du coup la fonction se déroule jusqu'au bout sans erreur.
en fait, comme ça ne marchait pas , j'ai mis directement la zone dans Range et je n'utilise pas zoneDonnees du coup. J'ai Range en commentaire aussi du coup la fonction se déroule jusqu'au bout sans erreur.
Heremion
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
1 juin 2022
102
12 sept. 2011 à 16:49
12 sept. 2011 à 16:49
Du coup, c'était bien la valeur passée en paramètre qui posait problème?
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
12 sept. 2011 à 17:08
12 sept. 2011 à 17:08
Bonjour,
Ben non, puisque ça plante toujours sur le Range avec la zone en dur "B3:M3"
Ben non, puisque ça plante toujours sur le Range avec la zone en dur "B3:M3"
ccm81
Messages postés
10908
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
2 mai 2025
2 431
12 sept. 2011 à 17:15
12 sept. 2011 à 17:15
bonjour à tous
Nelly1234, si tu postais ton fichier excel (format excel 2003) le vrai, on pourrait voir exactement le problème ?
bonne suite
Nelly1234, si tu postais ton fichier excel (format excel 2003) le vrai, on pourrait voir exactement le problème ?
bonne suite
Nelly1234
Messages postés
13
Date d'inscription
lundi 12 septembre 2011
Statut
Membre
Dernière intervention
27 septembre 2011
13 sept. 2011 à 09:40
13 sept. 2011 à 09:40
Bonjour,
C'est déjà fait:
lien http://www.cijoint.fr/cjlink.php?file=cj201109/cijsQLQZ3O.xls
attention ce n'est pas un xls mais un cls contenant le code VBA que tu peux voir avec un quelconque éditeur
Merci
C'est déjà fait:
lien http://www.cijoint.fr/cjlink.php?file=cj201109/cijsQLQZ3O.xls
attention ce n'est pas un xls mais un cls contenant le code VBA que tu peux voir avec un quelconque éditeur
Merci
Heremion
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
1 juin 2022
102
13 sept. 2011 à 10:49
13 sept. 2011 à 10:49
Personnellement,
j'ai retesté le code, et le seul morceau de code qui fait planter tout le reste, c'est :
En le mettant en commentaire, j'ai aucun souci de compilation ni d'exécution, et tout s'exécute.
j'ai retesté le code, et le seul morceau de code qui fait planter tout le reste, c'est :
'VERSION 1.0 CLASS 'BEGIN ' MultiUse = -1 'True 'End 'Attribute VB_Name = "Feuil1" 'Attribute VB_GlobalNameSpace = False 'Attribute VB_Creatable = False 'Attribute VB_PredeclaredId = True 'Attribute VB_Exposed = True
En le mettant en commentaire, j'ai aucun souci de compilation ni d'exécution, et tout s'exécute.