Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

[excel] Macro pour graphique.

  1. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    [excel] Macro pour graphique.

    Bonsoir à tous.

    Voila je dois actuellement réaliser une macro qui me ferai automatiquement une courbe en fonction de mon tableau.

    -Mon tableau à toujours les mêmes dimensions.
    -En abscisse mes valeurs vont de A30 à A16000
    -Mes ordonnées vont de B30 à B16000, C30 à C16000 et D30 à D16000.

    Vous l'aurez donc compris, mon graphique final sera composée de 3 courbes, et d'ailleurs à ce propos les courbes sont en nuage de points, mais sans les points, juste la courbe "lisse".

    Donc si quelqu'un avait un didacticiel ou un truc du genre pour m'aider je vous en serait vraiment reconnaissant, car il ne me reste aucun souvenir de mes cours de VB xD

    Merci, et si vous avez des questions, n'hésitez pas =)
     


    • Publicité



  2. Dudulle

    Date d'inscription
    octobre 2006
    Âge
    40
    Messages
    10 191

    Re : [excel] Macro pour graphique.

    Bonjour

    Tu peux utiliser ça:

    Code:
        Range("A30:D16000").Select
        Charts.Add
        ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
        ActiveChart.SetSourceData Source:=Sheets("test").Range("A30:D16000")
    En remplaçant "test" par le nom de ta feuille.
     

  3. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    Re : [excel] Macro pour graphique.

    Ok merci je vais test ça
     

  4. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    Re : [excel] Macro pour graphique.

    Bon voila j'ai un code qui fonctionne mais j'aimerai corriger 2 petites imperfection.

    Voici mon code :

    Code:
    Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro enregistrée le 09/10/2009 par #######
    '
    
        Charts.Add
        ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection(1).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
        ActiveChart.SeriesCollection(1).Values = "='trial force test Inconel DA_2'!$B$24:$B$18023"
        ActiveChart.SeriesCollection(1).Name = "=""Fx"""
        ActiveChart.SeriesCollection(2).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
        ActiveChart.SeriesCollection(2).Values = "='trial force test Inconel DA_2'!$C$24:$C$18023"
        ActiveChart.SeriesCollection(2).Name = "=""Fy"""
        ActiveChart.SeriesCollection(3).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
        ActiveChart.SeriesCollection(3).Values = "='trial force test Inconel DA_2'!$D$24:$D$18023"
        ActiveChart.SeriesCollection(3).Name = "=""Fz"""
        ActiveChart.Location Where:=xlLocationAsNewSheet
        With ActiveChart
            .HasTitle = True
            .ChartTitle.Characters.Text = "Results"
            .Axes(xlCategory, xlPrimary).HasTitle = False
            .Axes(xlValue, xlPrimary).HasTitle = False
        End With
    End Sub
    Mes 2 problèmes :

    Je sélectionne les valeurs sur la feuille "trial force test Inconel DA_2", le truc c'est que j'ai des vingtaine de feuille avec après le DA des 1,2,3, ect. Donc quand je lance la macro sur "trial force test Inconel DA_3" et bien, ça marche pas :/ Y a t-il moyen de faire une variable ou quelque chose du genre pour que cela marche quelque soit le numéro du fichier?

    Mon second problème viens de "ActiveChart.ChartType = xlXYScatterSmoothNoMarkers", en effet, je demande une courbe lissé sans points, et il me met des points sur mes courbes à chaque fois cet enfoiré, alors avec 18000 valeurs * 3 colonnes, ça fait un peu trop de points à mon gout... Une solution pour ce problème?

    P.S : je suis sur Excel 2007.

    Merci d'avance
    Dernière modification par yoda1234 ; 10/10/2009 à 06h40. Motif: anonymisation
     

  5. sitalgo

    Date d'inscription
    juin 2006
    Localisation
    La Réunion
    Messages
    3 734

    Re : [excel] Macro pour graphique.

    B'jour,

    Au lieu de mettre
    Code:
     ActiveChart.SeriesCollection(1).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
    qui s'adresse à une feuille fixe, mets plutôt
    Code:
     ActiveChart.SeriesCollection(1).XValues = ActiveSheet.Range("$A$24:$A$18023")
    qui fait avec la feuille active lors du lancement de la macro.
    Mais si t'as l'gosier, Qu'une armure d'acier, Matelasse. Brassens, Le bistrot.
     


    • Publicité



  6. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    Re : [excel] Macro pour graphique.

    Merci beaucoup \o/

    Reste plus que la solution à ma deuxième question et c'est nickel
     

  7. sitalgo

    Date d'inscription
    juin 2006
    Localisation
    La Réunion
    Messages
    3 734

    Re : [excel] Macro pour graphique.

    Je ne sais pas, il faut lire 4 tonnes de documentation pour avoir une malheureuse syntaxe. Essaie d'appliquer chartype sur les séries au lieu du graphe.
    Mais si t'as l'gosier, Qu'une armure d'acier, Matelasse. Brassens, Le bistrot.
     

  8. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    Re : [excel] Macro pour graphique.

    Héhé oui j'imagine pour la doc...

    Je vais essayer ce que tu as dis, au pire si ça marche pas je ferai ça à la main ça prend 3s.

    Merci à tous encore, bye
     

  9. Stan_94

    Date d'inscription
    février 2006
    Localisation
    Val de Marne
    Âge
    42
    Messages
    217

    Re : [excel] Macro pour graphique.

    Bonjour,
    puisque tu peux faire la manipulation à la main, tu peux donc enregistrer une macro de cela et insérer le code dans ton programme VBA, non ?
     

  10. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    Re : [excel] Macro pour graphique.

    Citation Envoyé par Stan_94 Voir le message
    Bonjour,
    puisque tu peux faire la manipulation à la main, tu peux donc enregistrer une macro de cela et insérer le code dans ton programme VBA, non ?
    Ce de là que je suis partit, mais bon c'est vraiment pas top, j'ai du apporter pas mal de correction, c'est pour ces corrections que j'avais besoins d'aide ici
     

  11. Lordstan

    Date d'inscription
    septembre 2009
    Âge
    24
    Messages
    24

    Re : [excel] Macro pour graphique.

    Citation Envoyé par sitalgo Voir le message
    B'jour,

    Au lieu de mettre
    Code:
     ActiveChart.SeriesCollection(1).XValues = "='trial force test Inconel DA_2'!$A$24:$A$18023"
    qui s'adresse à une feuille fixe, mets plutôt
    Code:
     ActiveChart.SeriesCollection(1).XValues = ActiveSheet.Range("$A$24:$A$18023")
    qui fait avec la feuille active lors du lancement de la macro.
    Bonsoir,

    J'ai essayer ton code, mais même après moult bidouillage, ça ne marche toujours pas, le debug s'arrête toujours sur cette ligne :/
     


    • Publicité




Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. une macro de recherche pour excel
    Par Alfabidou dans le forum Logiciel - Software - Open Source
    Réponses: 14
    Dernier message: 08/06/2010, 10h27
  2. macro excel
    Par alovesupreme dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 25/01/2009, 17h12
  3. Probleme Macro pour tracer un graphique XY
    Par sebastien_r31 dans le forum Logiciel - Software - Open Source
    Réponses: 11
    Dernier message: 26/12/2008, 20h14
  4. macro Excel
    Par gwendoline dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 11/10/2008, 19h06
  5. macro excel
    Par squall18 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 09/05/2006, 07h55