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

VBA Discussion :

VBasic : Courbe à 2 axes


Sujet :

VBA

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Par défaut VBasic : Courbe à 2 axes
    Salut à tous.

    Je suis ultra novice en Visual Basic, donc désolée si ma question peut vous paraître stupide.

    Je souhaiterais créer une macro qui créerait un graphique à 2 axes.
    Pour cela j'ai utilisé la fonction enregistrer une macro puis réaliser mon graf.
    J'ai ensuite apporté quelques modif pour les données source, mais quand je relance la macro, elle ne reconnaît apparement pas que c'est une courbe à deux axes, et m'affiche :
    "Erreur d'éxécution 1004 : la méthode 'Axes' de l'objet '_Chart' a échoué"
    Apparament il n'aime pas la ligne de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.Axes(xlCategory, xlSecondary).CategoryType = xlCategoryScale
    Je ne comprends vraiment pas, j'ai tout essayé ce que je connaissais

    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
    24
    25
    26
    27
    28
    29
    30
     Range("AHinf:AJsup").Select
     
        Charts.Add
        ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:= _
            "Courbes à deux axes"
        ActiveChart.SetSourceData Source:=Sheets("Rapport Bilan").Range( _
            "AHinf:AJsup"), PlotBy:=xlColumns
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection.NewSeries
        ActiveChart.SeriesCollection(1).XValues = Sheets("Rapport Bilan").Range("AHinf:AHsup")
        ActiveChart.SeriesCollection(1).Values = Sheets("Rapport Bilan").Range("AHinf:AHsup")
        ActiveChart.SeriesCollection(1).Name = "TPS BG1 sous tension"
        ActiveChart.SeriesCollection(2).XValues = Sheets("Rapport Bilan").Range("AHinf:AHsup")
        ActiveChart.SeriesCollection(2).Values = Sheets("Rapport Bilan").Range("AIinf:AIsup")
        ActiveChart.SeriesCollection(2).Name = "TPS BG1 en Charge"
        ActiveChart.SeriesCollection(3).XValues = Sheets("Rapport Bilan").Range("AHinf:AHsup")
        ActiveChart.SeriesCollection(3).Values = Sheets("Rapport Bilan").Range("AJinf:AJsup")
        ActiveChart.SeriesCollection(3).Name = "% BG1 en Charge"
        ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="BG1 " & nom_de_feuille
     
     
     
        With ActiveChart
            .HasAxis(xlCategory, xlPrimary) = True
            .HasAxis(xlCategory, xlSecondary) = True
            .HasAxis(xlValue, xlPrimary) = True
            .HasAxis(xlValue, xlSecondary) = True
        End With
        ActiveChart.Axes(xlCategory, xlPrimary).CategoryType = xlCategoryScale
        ActiveChart.Axes(xlCategory, xlSecondary).CategoryType = xlCategoryScale

    merci d'avance,

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Nous montre tu le bon code ..? est-tu sur de l'endroit de l'erreur .. déjà tous les "AHinf:AJsup" et similaire me semble bien louche...

  3. #3
    Candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Par défaut solution
    Désolée, mais en cherchant un peu plus dans le forum, j'ai trouvé la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       ActiveChart.SeriesCollection(3).AxisGroup = 2
    désolée

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

Discussions similaires

  1. [C#] Générer courbes multi-axes avec flags
    Par pitipilot dans le forum C#
    Réponses: 2
    Dernier message: 20/11/2014, 08h43
  2. problème graphique histo courbe 2 axes
    Par babou466 dans le forum Excel
    Réponses: 6
    Dernier message: 18/02/2009, 07h52
  3. [JFreeChart] Multi-courbes sur axe XY
    Par ohyes dans le forum 2D
    Réponses: 2
    Dernier message: 13/01/2008, 15h44
  4. Problème axe courbe
    Par mariono dans le forum MATLAB
    Réponses: 3
    Dernier message: 27/07/2007, 13h39
  5. Graphique Excel Courbe Histogramme 2 axes
    Par jm6570 dans le forum Excel
    Réponses: 1
    Dernier message: 05/06/2007, 11h41

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