Bonjour tout le monde,
je dispose d'un classeur avec plusieurs pages et chaque page dispose de plusieurs slicer (un slicer par colonne pour environ 20 colonnes)
Ce que je souhaite faire, c'est à l'aide du VBA, activer pour une page précise un slicer précis avec des valeurs précises.
Pour l'instant quand j’exécute le code pas à pas, tout fonctionne jusqu’à la dernière étape ou à force de manipuler plusieurs slicers, ces derniers n'affichent pas exactement les bonnes lignes.
C'est à dire pour un Slicer A, si l'item sélectionne vaut "A1", normalement il doit m'afficher que les lignes dont la valeur vaut "A1", mais ce dernier m'affiche même les lignes dont la valeur vaut "A2" (meme quand "A2".selected = false), ce bug m'arrive quand je manipule le slicer B
Je sais pas si j'ai été vraiment claire, je reste à votre disposition pour toute clarification.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 'Pour chaque slicer dans notre fichier excel For t = 0 To UBound(tableauParametreTri()) For Each oSlicercache In ThisWorkbook.SlicerCaches If oSlicercache.ListObject.DisplayName = sht1.Name & "_Données_REVIT" Or _ oSlicercache.ListObject.DisplayName = sht1.Name & "_Données_Calculées" Then 'si notre slicer se trouve sur la bonne page (sht1 est le nom de la page voulu que j'ai renseigne auparavant) 'On prends le slicer correspondant à notre premier parametre If oSlicercache.SourceName = tableauParametreTri(t) Then 'tableauParametreTri est un tableau qui regroupe le nom des slicers With ActiveWorkbook.SlicerCaches(oSlicercache.Name) For K = 1 To .SlicerItems.Count If (.SlicerItems(K).Caption = tableau_split(t)) Then .SlicerItems(K).Selected = True Else .SlicerItems(K).Selected = False End If Next K End With Exit For End If End If Next Next t
Merci d'avance
Je me trouve avec un bug comme ca
![]()
Partager