IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA-E] Erreur d'exécution '1004'


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Points : 103
    Points
    103
    Par défaut [VBA-E] Erreur d'exécution '1004'
    Bonjour,

    je voudrais pouvoir choisir ma plage de cellule en fonction de mon nombre de lignes lorsque je trace un camembert, mais il me fait une erreur du type

    La méthode 'Range' de l'objet '_Global' a échoué

    Voici mon programme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Sub tracer_camembert()
    '
    ' dessiner_camembert Macro
    ' Macro enregistrée le 13/03/2007
    '
    
    '
        Charts.Add
        ActiveChart.ChartType = xlPie
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection(1).XValues = Worksheets("Feuil1").Range(Cells(3, 7), Cells(23, 7))   
     ActiveChart.SeriesCollection(1).Values = "=Feuil1!R3C10:R23C10"
        ActiveChart.SeriesCollection(1).Name = "=Feuil1!R2C10"
        ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"
        ActiveChart.HasLegend = False
        ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabel
    End Sub
    La ligne qui me pose problème est en rouge, en effet en utilisant "=Feuil1!R3C7:R23C7", ca fonctionne, mais par la suite je voudrais faire varier les cellules automatiquement selon le nombre de lignes et de colonnes que j'aurais dans ma feuille de calcul.

    Si quelqu'un sait résoudre mon problème Merci.

  2. #2
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 342
    Points : 4 299
    Points
    4 299
    Par défaut
    Personnellement pour modifier les graphiques, je gardais la meme écriture, mais je mettais des variables qui comptait le nombre de lignes car je crois pas que ce soit faisable d'une autre manière avec les R et C

    Par exemple, quand je devais augmenter le slignes de mon graphique je faisait de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "='TCD PPT'!R" & i - 9 & "C4:R" & i & "C4"
    Où i était la dernière lignes de mes données qui devaient etre présentes dans mon graphique



    De plus, dans ce que tu as écrit, je vois pas comment ton graphique variera puisque tu ciblera toujours la meme plage de cellules ou alors j'ai mal compris ton soucis

  3. #3
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Points : 103
    Points
    103
    Par défaut autre problmème
    merci, j'ai utilisé ton code, mais voilà ce que ca me donne ca me donne comme erreur:

    "Erreur de compilation :
    Attendu : Fin d'instruction"

    et voilà le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Sub tracer_camembert()
    '
    ' dessiner_camembert Macro
    ' Macro enregistrée le 13/03/2007
    '
    
    '
    i = 3
    j = 23
        Charts.Add
        ActiveChart.ChartType = xlPie
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection(1).XValues = "=Feuil1!R" &j& "C7:R" &i& "C7"    ActiveChart.SeriesCollection(1).Values = "=Feuil1!R3C10:R23C10"
        ActiveChart.SeriesCollection(1).Name = "=Feuil1!R2C10"
        ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"
        ActiveChart.HasLegend = False
        ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabel
    End Sub
    où la ligne qui me pose pb est en rouge , i et j sont les valeurs qui changeront dans mon programme final.

    Merci d'avance.

  4. #4
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 342
    Points : 4 299
    Points
    4 299
    Par défaut
    Je sais pas si c'est normal, mais normalement il y a des espace avant et après le j (ou le i) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = "='Feuil1'!R" & j & "C7:R" & i & "C7"
    De plus je viens de voir que tu as oublié les tites apostrophes (les ' ) pour entourer 'Feuil1'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VBA - Erreur d'exécution 1004 Erreur définie par l'application ou par l'objet
    Par matthieupaul dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 22/01/2015, 16h18
  2. [XL-2007] vba : erreur d'exécution 1004
    Par rayba89 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/12/2013, 10h08
  3. [VBA][export] Erreur d'exécution '1004'
    Par le_niak dans le forum VBA Access
    Réponses: 1
    Dernier message: 29/07/2008, 20h33
  4. [VBA-E] Erreur d'éxecution '1004'
    Par andlio dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 04/01/2007, 10h12
  5. [VBA-E] erreur d'exécution 1004 ?
    Par toy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/05/2006, 13h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo