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 :

graphe de point sous vba excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mars 2009
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 120
    Par défaut graphe de point sous vba excel
    hello tous le monde, je cherche à l'aide d'un bouton à créer un graphe de point à l'aide de données disponible dans 2 colonnes:
    colonne1= y
    colonne2= f(x)

    j'aimerai donc avoir lorsque je clique sur le bouton y=f(x) en graphe de point.

    J'ai utilisé l'enregistreur de macro mais ça ne marche pas top.

    Quelqu'un aurait une idée pour la fonction a utiliser pour obtenir un graphe de point ?

    Merci par avance

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Faudrait que tu nous donne un bout de code histoire que l'on puisse voir ce qui peut varier (toujours les même colonne? , les ligne qui change?,....)

    sinon je peut toujour te proposer ca, ou on peut faire varier la dernière ligne de la zone a tracer (variable i), tu peux sans problème remplacer les "feuil1" par le nom de tes onglet

    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
     
    dim zonedesx as string
    dim zonedesy as string
    dim i as integer
    i=16
    zonedesx="A2:A" & i
    zonedesy="D2:D" & i
     
     Charts.Add
        ActiveChart.ChartType = xlXYScatter
        ActiveChart.SetSourceData Source:=Sheets("Feuil1").Range(zonedesx & "," &zonedesy ), PlotBy:=xlColumns
        ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"
       'ActiveChart.Location Where:=xlLocationAsNewSheet    pour le mettre sur un nouvel onglet
        With ActiveChart
            .HasTitle = True
            .ChartTitle.Characters.text = "ton titre"
            .Axes(xlCategory, xlPrimary).HasTitle = True
            .Axes(xlCategory, xlPrimary).AxisTitle.Characters.text = "ton axe x"
            .Axes(xlValue, xlPrimary).HasTitle = True
            .Axes(xlValue, xlPrimary).AxisTitle.Characters.text = "ton axe y"
        End With

  3. #3
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mars 2009
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 120
    Par défaut
    Merci merci

    voici mon 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
    19
    20
    21
    22
    23
    Dim zonedesx As String
    Dim zonedesy As String
    Dim i As Integer
    Dim derniereligne As Integer
    derniereligne = Sheets("Feuil1").Range("A65536").End(xlUp).Row
    For i = 2 To derniereligne
    zonedesx = "C2:C" & i
    zonedesy = "D2:D" & i
     
     Charts.Add
        ActiveChart.ChartType = xlXYScatter
        ActiveChart.SetSourceData Source:=Sheets("Feuil1").Range(zonedesx & "," & zonedesy), PlotBy:=xlColumns
        ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"
       'ActiveChart.Location Where:=xlLocationAsNewSheet    pour le mettre sur un nouvel onglet
        With ActiveChart
            .HasTitle = True
            .ChartTitle.Characters.Text = "ton titre"
            .Axes(xlCategory, xlPrimary).HasTitle = True
            .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "ton axe x"
            .Axes(xlValue, xlPrimary).HasTitle = True
            .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "ton axe y"
        End With
    Next i
    Je souhaite prendre en compte chaque ligne non vide de la colonne C et de la colonne D.
    J'ai donc fais une boucle for allant de 2 jusqu'à la derniere ligne mais ça ne marche pas trop voir pas du tout...

    P.s: par contre ton code marche super

  4. #4
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    tu peux pas boucler sur la création de graphique

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    zonedesx = "C2:C" & derniereligne
    zonedesy = "D2:D" & derniereligne
    devrais mieux marcher (je ne sais pas comment les ligne vide sont prisent en compte, sinon faudra peut être faire plusieurs série)
    en espérant que les ligne vide de C correspondent au ligne vide de D (sans cela ca perdrais un peu de sons sens

  5. #5
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Mars 2009
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 120
    Par défaut
    je ne savais pas que je ne pouvais pas boucler, maintenant je le sais merci.

    Sinon de cet façon ça marche , il prend bien en compte toutes les lignes donc c'est cool c'est ce que je souhaitais.

  6. #6
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Si tu peux boucler, mais a chaque boucle il te fait un nouveau graphique et visiblement ce n'est pas ce que tu souhaitais

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

Discussions similaires

  1. passage de parametre sous VBA excel
    Par raka200 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 21/12/2007, 11h07
  2. transformé cellule sous vba excel
    Par axamen dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/06/2007, 15h03
  3. [VBA-E] Comment créer un tableau sous vba excel
    Par jeanpierreco dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/01/2007, 09h52
  4. Arc de cercle sous VBA excel?
    Par fredieuric dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/11/2006, 13h58
  5. ptit probleme combobox sous vba/excel
    Par bandito dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/10/2006, 09h34

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