Sub ClearFiltresSegments()
'
' Descriptif du Code :
' Ce code permet de retirer tous les filtres actifs des tableaux structurés présents sur la feuille active du classeur.
' Il cible les segments (slicers) liés aux tableaux structurés, pour ensuite les défiltrer.
'
'
' Commentaire du code :
' 1. Déclaration de la variable cls pour représenter le classeur actif.
Dim cls As Workbook
' On associe la variable cls au classeur actif.
Set cls = Workbooks(ActiveWorkbook.Name)
' 2. Déclaration de la variable wks pour représenter la feuille de calcul active.
Dim wks As Worksheet
' On associe la variable wks à la feuille de calcul active dans le classeur.
Set wks = cls.Worksheets(ActiveSheet.Name)
' 3. Déclaration de la variable ts pour représenter la collection de tous les tableaux structurés (ListObjects) présents sur la feuille active.
Dim ts As ListObjects
' On associe ts à la collection de tableaux structurés de la feuille active.
Set ts = wks.ListObjects
' 4. Déclaration de la variable t pour représenter un tableau structuré unique au sein de la collection ts.
Dim t As ListObject
' On cible un tableau structuré spécifique nommé "Tableau2".
Set t = ts("Tableau2")
' 5. Déclaration de la variable slice pour représenter un segment (Slicer) lié aux tableaux structurés.
Dim slice As Slicer
' 6. Boucle For Each pour parcourir chaque tableau structuré de la feuille.
For Each t In ts
' Boucle For Each pour parcourir chaque segment (Slicer) associé au tableau structuré t.
For Each slice In t.Slicers
' Supprime tous les filtres appliqués au segment slice.
slice.SlicerCache.ClearAllFilters
Next slice
Next t
End Sub