Mise à jour TCD en fonction d'une variable

Bonjour,

je voudrais savoir si il est possible de mettre à jour un TCD en faisant référence à une valeur contenue dans une celule de la feuille.

Mon TCD comprend un filtre de rapport faisant référence au numéro de semaine.

J'aimerais pouvoir afficher le TCD avec les semaines concernées depuis la semaine n°1 jusqu'à la semaine qui porte le numéro affiché dans la celulle L1.

Je joins le fichier pour plus de précisions.

Merciii

6testmacro.xlsm (17.04 Ko)

Bonjour,

Une proposition à étudier.

Cdlt.

8testmacro.xlsm (27.56 Ko)
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim pt As PivotTable, pi As PivotItem

    If Target.Address = "$L$1" Then
        On Error GoTo err_Handler
        Set pt = Me.PivotTables(1)
        pt.ManualUpdate = True
        With pt.PivotFields("semaine")
            .ClearAllFilters
            .EnableMultiplePageItems = True
            For Each pi In .PivotItems
                If pi.Name > Target.Value Then pi.Visible = False
            Next
        End With
        pt.ManualUpdate = False
    End If

exit_Handler:
    Set pt = Nothing
    Exit Sub

err_Handler:
    MsgBox "Le numéro de semaine n'est pas valide.", vbExclamation
    With pt
        .PivotFields("semaine").ClearAllFilters
        .ManualUpdate = False
    End With
    Resume exit_Handler

End Sub
Rechercher des sujets similaires à "mise jour tcd fonction variable"