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 :

Ajouter 1 sur une ActiveChart.SeriesCollection [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 84
    Par défaut Ajouter 1 sur une ActiveChart.SeriesCollection
    Salut,

    Est-il possible d'incrémenter la serie d'un graphe "simplement"?
    J'ai essayé bêtement +1 mais cela ne fonctionne pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        ActiveSheet.ChartObjects("W-SSI-Chart0-1-c").Activate
        'ActiveChart.SeriesCollection(1).Values = "=$E$831:$E$833"
        ActiveChart.SeriesCollection(1).Values = ActiveChart.SeriesCollection(1).Values + 1
    en gros, je voudrais via une macro passer à =$E$831:$E$834, puis =$E$831:$E$835

    une idée?
    par avance merci

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Tu n'étais pas très loin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ActiveSheet.ChartObjects("W-SSI-Chart0-1-c").Activate
    Var = ActiveChart.SeriesCollection(1).Values
    For i = 1 To UBound(Var)
        Var(i) = Var(i) + 1
    Next i
    ActiveChart.SeriesCollection(1).Values = Var

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 84
    Par défaut
    merci pour ta réponse,

    cependant ce n'est pas tout à fait le résultat attendu.
    En fait, cela augmente de 1 les valeurs de ma sélection, mais pas la taille de la sélection elle-même.
    Or c'est augmenté la taille de la sélection qui intéresse.

    Pour résumer:

    ActiveChart.SeriesCollection(1).Values = "=$E$831:$E$832"
    avec pour valeur ={9/13} par exemple

    quand j'utilise ton code, l'étendu du champs reste la même mais les valeurs ont bougées ={10/14}

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    C'est déjà plus compliqué. Le code suivant suppose que les données source sont en colonne. Pour un code plus universel (données en ligne ou en colonne, demande.) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        ActiveSheet.ChartObjects("W-SSI-Chart0-1-c").Activate
        Dim Var As String, Tabl, Feuille As String
        ActiveSheet.ChartObjects("Graphique 1").Activate
        Var = ActiveChart.SeriesCollection(1).Formula
        Tabl = Split(Var, ",")
        Feuille = Left(Tabl(2), InStr(1, Tabl(2), "!") - 1)
        Tabl(2) = Feuille & "!" & Range(Tabl(2)).Resize(Range(Tabl(2)).Rows.Count + 1).Address
        Var = Join(Tabl, ",")
        ActiveChart.SeriesCollection(1).Formula = Var

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 84
    Par défaut
    Merci Daniel

    Effectivement, c'est un peu plus compliqué mais ca fonctionne.
    Encore merci

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

Discussions similaires

  1. [GD] Ajouter image sur une image
    Par mims1664 dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 21/08/2009, 21h00
  2. WCF - Ajout Reference sur une Class Library
    Par fix105 dans le forum Windows Communication Foundation
    Réponses: 1
    Dernier message: 20/03/2009, 12h20
  3. Ajout donnée sur une liste
    Par zeralium dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/05/2008, 22h49
  4. ajout texte sur une courbe
    Par heliconet dans le forum Visio
    Réponses: 2
    Dernier message: 22/01/2008, 22h39
  5. ajout de colonnes sur une selection
    Par DaxTaz dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 05/08/2004, 17h44

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