Ajouter la série Axe des X à un graphique sur zone filtrée

Bonjour à tous

J'en appelle à votre savoir pour résoudre un problème relativement simple je pense, mais mes connaissances insuffisantes à ce jour pour avancer sur mon projet :

Le code ci dessous génère automatiquement un graphique, de façon simple. Je suis parvenu à l'améliorer.

Je souhaiterais maintenant ajouter l'axe des X (Colonne I de ma base de donnée qui contient les dates), mais la ligne de code que j'ai trouvé sur le net me prend toute la colonne, et non les données issues du filtre.

J'ai commenté un maximum le code en espérant avoir été clair.

1 - Chargement d'une box d'un formulaire

Private Sub UserForm_Initialize()

' ============ Récupération de la clé de filtre dans un menu déroulant et mise en place du filtre ============

Dim i As Integer
Dim Plage As Range

Set WsListes = Sheets("Liste validation")
Set WsData = Sheets("ASQ.ER.483")

'Chargement de la box

    With WsListes
         Set Plage = .Range("C4:C" & .Range("C65536").End(xlUp).Row)
    End With

     CBAnalyse.List = Plage.Value

End Sub

2 - Mise en place du filtre

Private Sub CommandButton1_Click()

'Mise en place du filtre

        If FormPT.CBAnalyse.ListIndex = -1 Then
            Exit Sub
        Else
            Analyse = CBAnalyse.Value
        End If

WsData.Activate
NbLignes = Range("A65536").End(xlUp).Row

'colonne cible = J=10
WsData.Range("A1:V" & NbLignes).AutoFilter Field:=10, Criteria1:=Analyse

CreerGraphiqueNvelleFeuille

End Sub

3 - Création et amélioration du graphique

Sub CreerGraphiqueNvelleFeuille()

    Const sheDonnéesSource  As String = "ASQ.ER.483"
    Const sheGraphique      As String = "Carte Z-Score"
    Dim chGraph             As Chart
    Dim rPlage, xPlage              As Range
    Dim i As Integer

    ' Définition de la plage des données source du graphique
    Set rPlage = Sheets(sheDonnéesSource).Range("H2:H" & NbLignes)

    ' Suppression du graphique si déjà existant
    On Error Resume Next
    Sheets(sheGraphique).Delete
    On Error GoTo 0

    ' Création du graphique
    Set chGraph = Charts.Add

    With chGraph
        ' Type histogramme
        .ChartType = xlColumnClustered
        ' Source du graphique
        .SetSourceData Source:=rPlage, PlotBy:=xlColumns
        '.SetSourceData Source:=xPlage, PlotBy:=xlRows
        ' Affichage du titre
        .HasTitle = True
        ' Intitulé
        .ChartTitle.Characters.Text = Analyse
        ' Nom de la feuille recevant le graphique
        .Name = sheGraphique
        ' Ajout axe des X

        '.SeriesCollection(1).XValues = "=ASQ.ER.483!I2:I" & NbLignes
        .SeriesCollection(1).Format.Fill.ForeColor.RGB = rgbGreen
    End With

    'Modifications

    With ActiveChart.Axes(xlValue)
        .HasTitle = True
        .MaximumScale = 3
        .MinimumScale = -3
        .MajorUnit = 0.5
        .Border.Color = RGB(255, 0, 0)
        With .AxisTitle
            .Caption = "Z-SCORE"
            .Font.Name = "bookman"
            .Font.Size = 10

            '.Interior.Color = RGB(0, 255, 0)
        End With
    End With

    With ActiveChart.Axes(xlCategory)
        .HasTitle = True
        .AxisTitle.Text = "Envoi"
    End With

'Axe des X en bas
    ActiveChart.Axes(xlCategory).Select
    Selection.TickLabelPosition = xlLow

End Sub

Mon souhait est donc d'ajouter la colonne I en axe des X sur la zone filtrée.

Etape suivante également, ajouter d'autres séries de données (Colonnes U à X, au format 'courbe' et non barre), toujours sur le filtre de ma série.

Merci beaucoup pour votre aide.

Frederic

Rechercher des sujets similaires à "ajouter serie axe graphique zone filtree"