Graphique à la demande

  • Initiateur de la discussion Initiateur de la discussion helene51
  • 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 !

H

helene51

Guest
Bonjour le forum,

J'ai un petit souci avec les Chartspace... et je sollicite votre aide à ce sujet !

J'ai un USF avec 1 chartspace qui doit s'afficher en fonction de choix faits par l'utilisateur dans des combobox mais je ne sais pas trop comment faire ...

Pourriez-vous m'aider à me lancer ???? !!!

Merci d'avance !
 

Pièces jointes

Re : Graphique à la demande

Bonjour Creepy, Hasco, Pierrot93,

Je m'en suis enfin sortie de ce tableau en prenant vos idées et quelques recherches .... voilà ce que j'ai sorti et ça fonctionne.

Enfin presque !!! mon problème maintenant c'est d'ajouter des séries pour tracer 4 courbes en simultané sur un graphique.... et aussi de prendre en compte tout mon tableau et pas seulement les 10 premières lignes ...

Mais je ne désespère pas !!!

Code:
Option Explicit
Option Base 1
Dim Cht As ChChart
Dim C

Private Sub Btn_Ok_Click()
Dim i As Integer
Dim x As Integer
Dim Tableau(14), Plage(14)

Sheets("Analyse").Select

ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotCache.Refresh

Set C = ChartSpace1.Constants
Set Cht = ChartSpace1.Charts.Add

' Supprimer les séries existantes dans le graphique
'For i = Cht.SeriesCollection.Count To 1 Step -1
'    Cht.SeriesCollection.Delete i - 1
'Next i

'Définit les abscisses
With Sheets("Analyse")
    For i = 1 To 14
        Tableau(i) = Cells(i + 4, 4)
    Next i
End With

'Définit les propriétés du graphique
With Cht
'    .HasLegend = True
'    .Legend.Position = chLegendPositionBottom
    .HasTitle = True
    .Title.Caption = "Contrôle poids " & Cbx_Element.Value & " P" &  _Cbx_Programme.Value & " Atelier" & Cbx_Atelier.Value
    .Type = C.chChartTypeSmoothLineMarkers
    .Axes(1).HasTitle = True
    .Axes(1).Title.Caption = "Poids (g)"
    .Axes(0).HasTitle = True
    .Axes(0).Title.Caption = "Semaines "
End With

Cht.SeriesCollection.Add
    

'Définit les ordonnées
With Sheets("Analyse")
    For i = 1 To 14
        Plage(i) = Cells(i + 4, 5)
    Next i
End With

'Remplit le graphique avec les valeurs définies précédemment
With Cht
    .SetData C.chDimCategories, C.chDataLiteral, Tableau
    .SeriesCollection(0).DataLabelsCollection.Add
    .SeriesCollection(0).DataLabelsCollection(0).Position = chLabelPositionCenter
    .SeriesCollection(0).DataLabelsCollection(0).Font.Color = "black"
    .SeriesCollection(0).SetData C.chDimValues, C.chDataLiteral, Plage
End With

Erase Plage

End Sub
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
192
Réponses
7
Affichages
820
Retour