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, graphiques : Acceder au Range pointé par une série


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 16
    Points : 10
    Points
    10
    Par défaut VBA, graphiques : Acceder au Range pointé par une série
    Bonjour,

    J'ai un graphique qui comporte plusieurs séries. Chacunes pointent sur des "XValues" (axe des absice) et des "Values" (axe des ordonnées).

    Je défini actuellement cette instruction de la maniere suivante :

    mychart.Chart.SeriesCollection(Maserie1).XValues = RangeX
    mychart.Chart.SeriesCollection(Maserie1).values = RangeY

    je souhaite ajouter des cellules au Range pointé par une série. Pour ce faire, je connais la fonction "Union" qui construit un Range à partir de 2 Range. Mais je bloque sur un point : comment obtenir le Range pointé sur une série ?

    J'aimerais donner une instruction du type :
    mychart.Chart.SeriesCollection(Maserie1).XValues = Application.Union(RangeActuel,RangeAAjouter)

    Si quelqu'un a une idée ...
    Merci !

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu as la solution consistant à redéfinir la plage de données :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        ActiveChart.PlotArea.Select
        With ActiveChart
                .SeriesCollection(1).Values = "=Feuil1!R2C1:R14C1"
        End with
    Tu dois sélectionner le graphe et connaître le N° de la série.

    Si ça peut t'aider...

    A+

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    Merci d'avoir répondu.
    En fait ca ne résoud pas mon problème car je ne connais pas "l'ancienne" plage pointée par ma série. C'est ca qui me bloque.

    Merci encore

    A+

  4. #4
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    J'ai résolu le problème en programmant une fonction qui accede à la formule de la série :
    mychart.Chart.SeriesCollection(Maserie1).Formula

    et qui "décompose" cette string pour obtenir des range.

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

Discussions similaires

  1. [VBA-E] Changement de couleur d'un point d'une série dans un graphique ?
    Par epfyffer dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 26/02/2020, 11h59
  2. [C#] Remplacer un point par une virgule
    Par SLicTa dans le forum Windows Forms
    Réponses: 6
    Dernier message: 03/01/2008, 13h08
  3. [VBA-E] Parcourir un range ligne par ligne
    Par boosty dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 19/04/2006, 13h44
  4. [FORMS6] remplacer un point par une vigule
    Par mcf1 dans le forum Oracle
    Réponses: 6
    Dernier message: 07/12/2005, 08h46
  5. Savoir la taille d'un fichier pointé par une URL
    Par jeje99 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 15/11/2005, 18h35

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