Adapter graphique a une base de donnee variable

  • Initiateur de la discussion Initiateur de la discussion Payou
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Payou

XLDnaute Occasionnel
Bonjour a tous,

Comme dit dans le titre, mon problème est le suivant. J'ai créé sous enregistreur de macro, un graph avec des séries se rapportant a un tableau.

Cependant ce tableau se verra rajouter au fil du temps des lignes, et j'aimerais donc que lorsque je lance ma macro, le graphique prenne en compte ces nouvelles lignes.

Je vous met le code actuel avec les zones en rouges qui devraient être modifiées, pour permettre de prendre en compte toute les colonnes :
Code:
Sub Faismoimongraph()

Application.ScreenUpdating = False

'Destruction de l'ancien graphique s'il existe
Application.DisplayAlerts = False
Sheets("Graph Scores").Delete
Application.DisplayAlerts = True

    Sheets("Scores").Select
    Charts.Add
    ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
    ActiveChart.SetSourceData Source:=Sheets("Scores").Range("G16")
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).XValues = "=Scores!R2C1:R6C1"
    ActiveChart.SeriesCollection(1).Values = "=[COLOR="Red"]Scores!R2C2:R6C2[/COLOR]"
    ActiveChart.SeriesCollection(1).Name = "=Scores!R1C2"
    ActiveChart.SeriesCollection(2).XValues = "=Scores!R2C1:R6C1"
    ActiveChart.SeriesCollection(2).Values = "=[COLOR="Red"]Scores!R2C3:R6C3[/COLOR]"
    ActiveChart.SeriesCollection(2).Name = "=Scores!R1C3"
    ActiveChart.SeriesCollection(3).XValues = "=Scores!R2C1:R6C1"
    ActiveChart.SeriesCollection(3).Values = "=[COLOR="Red"]Scores!R2C4:R6C4[/COLOR]"
    ActiveChart.SeriesCollection(3).Name = "=Scores!R1C4"
    ActiveChart.SeriesCollection(4).XValues = "=Scores!R2C1:R6C1"
    ActiveChart.SeriesCollection(4).Values = "=[COLOR="Red"]Scores!R2C5:R6C5[/COLOR]"
    ActiveChart.SeriesCollection(4).Name = "=Scores!R1C5"
    ActiveChart.SeriesCollection(5).XValues = "=Scores!R2C1:R6C1"
    ActiveChart.SeriesCollection(5).Values = "=[COLOR="Red"]Scores!R2C6:R6C6[/COLOR]"
    ActiveChart.SeriesCollection(5).Name = "=Scores!R1C6"
    ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Graph Scores"
    With ActiveChart
        .HasTitle = True
        .ChartTitle.Characters.Text = "Evolution des scores"
        .Axes(xlCategory, xlPrimary).HasTitle = True
        .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Partie"
        .Axes(xlValue, xlPrimary).HasTitle = True
        .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Score"
    End With
    ActiveChart.Axes(xlCategory).Select
    With ActiveChart.Axes(xlCategory)
        .MinimumScaleIsAuto = True
        .MaximumScaleIsAuto = True
        .MinorUnitIsAuto = True
        .MajorUnit = 1
        .Crosses = xlAutomatic
        .ReversePlotOrder = False
        .ScaleType = xlLinear
        .DisplayUnit = xlNone
    End With
Application.ScreenUpdating = True

End Sub

A savoir que les séries 1,2,3,4,5 sont les résultats des lignes comprises dans les colonnes B,C,D,E,F

EDIT: Upload d'un fichier exemple
 

Pièces jointes

Dernière édition:
Re : Adapter graphique a une base de donnee variable

Bonjour,

A tester et adapter :

nblig = Sheets("Scores").Range("A65536").End(xlUp).Row
ActiveChart.SeriesCollection(1).XValues = "=Scores!R2C1:R" & nblig & "C1"
ActiveChart.SeriesCollection(1).Values = "=Scores!R2C2:R" & nblig & "C2"

Voir fichier
 

Pièces jointes

Dernière édition:
Re : Adapter graphique a une base de donnee variable

Bonjour Catrice,

Tout d'abord merci de pour ta réponse. Je vais abuser, mais pourrais-tu juste me montrer ou l'intégrer dans mon code stp, après j'adapterais bien sur, mais juste l'emplacement serait vraiment sympa 🙂

ENORME EDIT: Euh gros boulet, je retire ma demande, et te tiens au courant si cela fonctionne 😀

EDIT2: Merci ça marche super !
 
Dernière édition:
Re : Adapter graphique a une base de donnee variable

Merci Catrice

par contre j'ai un problème avec ton code, il me manque le joueur de la première colonne :S Et j'ai le même problème également avec la précédente version :S

EDIT: Chez toi ca fonctionne très bien, chez moi il me met 2 personnes sous la meme ligne de graph :S

EDIT: Je crois que c'est bon je devais definir x comme 'variant' et non "Object"
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
452
Réponses
0
Affichages
367
Réponses
0
Affichages
772
Retour