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 :

Créer une boucle For Next pour faire des graphiques


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Enseignant en Activité Physique Adaptée
    Inscrit en
    Août 2021
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Enseignant en Activité Physique Adaptée
    Secteur : Santé

    Informations forums :
    Inscription : Août 2021
    Messages : 25
    Par défaut Créer une boucle For Next pour faire des graphiques
    Bonjour à toutes et à tous,

    je rencontre un problème sur VBA pour créer des graphiques dans une boucle, je précise que je débute totalement sur VBA, avant cela j'ai appris à coder sur Matlab (niveau faible également mais je me débrouille).

    Je pense que mon problème ne présentera pas une grande difficulté pour un(e) connaisseur(euse).

    Alors voilà, j'aimerai créer une itération de type x = 2 to 16 pour créer 15 graphiques des lignes 2 à 16. Je précise que les données à utiliser sont dans une feuille appelée "fonctionnel".

    Voici ce que j'ai écrit :
    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
    21
    22
    23
    24
    Sub BoucleGraphindiv()
    Dim x As Byte
    For x = 2 To 16
    ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
    ' création de la série T0
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.FullSeriesCollection(1).Name = _
            "='Graph groupe fonctionnel et myo'!R3C2"
    ' récupération des données de t0
            ActiveChart.FullSeriesCollection(1).Values = _
            "=Fonctionnel!RxC10:RxC13,Fonctionnel!RxC17:RxC25,Fonctionnel!RxC27,Fonctionnel!RxC28"
    ' récupération des nom des variables
        ActiveChart.FullSeriesCollection(1).XValues = _
            "='Graph groupe fonctionnel et myo'!R2C3:R2C6,'Graph groupe fonctionnel et myo'!R2C10:R2C18,'Graph groupe fonctionnel et myo'!R2C20:R2C21"
    ' suppression des lignes de fond
        ActiveChart.Axes(xlValue).MajorGridlines.Select
        Selection.Delete
        ActiveChart.SetElement (msoElementChartTitleCenteredOverlay)
    ' ajout du titre du graphique en fonction du nom du participant
        Selection.Caption = "=Fonctionnel!RxC4"
        ActiveChart.SetElement (msoElementDataLabelOutSideEnd)
     
        Next x
    End Sub
    Mon problème étant que Rx ne se transforme pas en R2, ma macro va donc chercher les données dans la cellule RXC10.

    Avez-vous une idée ?

    Cordialement,

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 565
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 565
    Par défaut
    Bonjour

    Il faut découper tes chaînes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "=Fonctionnel!RxC10:RxC13,Fonctionnel!RxC17:RxC25,Fonctionnel!RxC27,Fonctionnel!RxC28"
    doit être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "=Fonctionnel!R" & x &"C10:R" & x & "C13,Fonctionnel!R" & x & "C17:R" & x & "C25,Fonctionnel!R" & x & "C27,Fonctionnel!R" & x & "C28"

  3. #3
    Membre averti
    Homme Profil pro
    Enseignant en Activité Physique Adaptée
    Inscrit en
    Août 2021
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Enseignant en Activité Physique Adaptée
    Secteur : Santé

    Informations forums :
    Inscription : Août 2021
    Messages : 25
    Par défaut
    ça fonctionne parfaitement !!! Merci beaucoup. Je continue mon code en espérant être moins bloqué par la suite merci encore !

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/04/2010, 22h09
  2. faire une boucle for..next sur des textbox
    Par Actarusdu60 dans le forum VB.NET
    Réponses: 1
    Dernier message: 28/11/2008, 21h51
  3. Réponses: 5
    Dernier message: 27/11/2008, 17h34
  4. créer une boucle for
    Par roblescriso dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 19/02/2008, 08h28
  5. créer une boucle d'attente pour de l'ajax
    Par Ceubex dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/08/2007, 22h46

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