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] Valeurs de l'axe des abscisses, Propriété XValues


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut [VBA-E] Valeurs de l'axe des abscisses, Propriété XValues


    J'ai un souci avec une ligne de code. Je souhaiterais donner des valeurs à l'axe des abscisses (X). La Localisation est variable et définie par un UserForm avant.
    Le message d'erreur est le suivant : Erreur d'exécution '1004' : Impossible de définir la propriété XValues de la classe Series.

    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
    19
    20
    Charts("Graph1").Activate
     
        ActiveChart.ChartType = xlLineMarkers
        Worksheets("Données").Activate
     
        Charts("Graph1").SetSourceData Source:=Union(Sheets("Données").Range("C10:E10"), Sheets("Données").Range(Cells(PremièreLigne, 3), Cells(DernièreLigne, 5))), PlotBy:=xlColumns
     
     
        Dim Colonne
        If ComboBoxEchelle.Value = Range("F10").Value Then Colonne = 6
        If ComboBoxEchelle.Value = Range("G10").Value Then Colonne = 7
        If ComboBoxEchelle.Value = Range("H10").Value Then Colonne = 8
        If ComboBoxEchelle.Value = Range("I10").Value Then Colonne = 9
     
        Worksheets("Données").Activate
        Dim PlageX As Range
        PlageX = Range(Cells(PremièreLigne, Colonne), Cells(DernièreLigne, Colonne)).Address
     
        Charts("Graph1").Activate
        ActiveChart.SeriesCollection(1).XValues = PlageX.Address
    L'erreur apparaît à la dernière ligne.

    Si quelqu'un pouvait m'aider car je suis débutant en langage Visual Basic et là, ça fait une journée que je galère. Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonsoir,

    Tu n'es pas loin de la bonne solution

    Essaye ceci :
    Code (ajouter Set et supprimer les .Address) : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim PlageX As Range
    Set PlageX = Range(Cells(PremièreLigne, Colonne), Cells(DernièreLigne, Colonne))
     
        Charts("Graph1").Activate
        ActiveChart.SeriesCollection(1).XValues = PlageX

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut
    Merci Fring pour cette piste.
    Je l'ai essayée à l'instant, mais, rien à faire, il y a toujours un bug.
    L'erreur est toujours : Impossible de définir la propriété XValues de la classe Series.

    Le code est le suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Worksheets("Données").Activate
        Dim PlageX As Range
        Set PlageX = Range(Cells(PremièreLigne, Colonne), Cells(DernièreLigne, Colonne))
     
        Charts("Graph1").Activate
        ActiveChart.SeriesCollection(1).XValues = PlageX
    Si vous avez une autre idée pour m'aider, je suis preneur.
    Merci d'avance.

  4. #4
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Etrange, cela devrait fonctionner pourtant.
    Fais ce petit test pour vérifier ce que contient PlageX et ce que renvoient tes variables PremièreLigne, DernièreLigne et Colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim PlageX As Range
    Set PlageX = Range(Cells(PremièreLigne, Colonne), Cells(DernièreLigne, Colonne))
    MsgBox PlageX.Address

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut
    Quand j'insère la MsgBox, elle me dit "$F$12:$F$15".
    Mes variables apparaissent bien (valeurs souhaitées). Je ne sais pas si l'expression convient à la propriété XValues par contre, mais je suis novice en VB.

  6. #6
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Oui de ce côté là c'est ok.

    A première vue je ne vois pas ce qui coince.
    Compresse ton fichier (max. 50Ko) et met le en pièce jointe, j'y jetterai un oeil.

Discussions similaires

  1. Colorier une valeur de l'axe des abscisses
    Par thomasly dans le forum VBA Access
    Réponses: 0
    Dernier message: 05/03/2013, 18h41
  2. [XL-2003] Graphique - Centrer les valeurs de l'axe des abscisses x
    Par tonio-lille dans le forum Excel
    Réponses: 1
    Dernier message: 12/05/2011, 15h20
  3. Changer les valeurs de l'axe des abscisses
    Par niepoc dans le forum Calcul scientifique
    Réponses: 2
    Dernier message: 08/09/2009, 15h21
  4. Modifier les valeurs de l'axe des abscisses
    Par mspeach dans le forum Excel
    Réponses: 5
    Dernier message: 28/05/2009, 00h22
  5. Réponses: 2
    Dernier message: 05/08/2008, 17h43

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