• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Synchroniseren van slicers over verschillende datasets

Status
Niet open voor verdere reacties.

Coberg

Nieuwe gebruiker
Lid geworden
1 mei 2020
Berichten
1
Hoi allemaal,

Ik ben bezig met het maken van een sjabloon bestand in Excel en Word
Deze sjabloon genereert op basis van diverse databronnen grafieken, tabellen en berekende waarden in Excel en neemt deze op in het gekoppeld Word document.

Dit heb ik inmiddels allemaal werkend gekregen:

  • Inkoppelen van diverse databronnen
  • Aanmaken draaitabellen en slicers
  • Opstellen van grafieken, tabellen en berekende waarden
  • VBA routine opgesteld die door de diverse slicers waarden loopt en een Word template kopieert en vult
  • Word template gemaakt waarvan telkens een kopie wordt getrokken, wordt gevuld met de gegenereerde grafieken, tabellen en waarden
  • Opslaan van gegenereerde Word document onder steeds unieke naam

Nu loop ik nog tegen een probleem aan, namelijk het volgende:

Ik wil slicers over diverse datasets synchroniseren waarbij de slicer items niet 100% met elkaar overeen komen. (als beide bronnen exact hetzelfde zijn dan speelt dit probleem niet)
Als voorbeeld heb ik 2 datasets, met draaitabel en bijbehorende slicers

Knipsel.PNG


De eerste dataset heeft 6 names en 6 surnames als gegevens, en van hieruit is een draaitabel en slicer genomen.
Tweede dataset heeft 5 names en 5 surnames

Als de eerste dataset/draaitabel/slicer een name heeft die niet in de 2e dataset voorkomt dan kan deze uiteraard ook niet geselecteerd worden. Eigenlijk zouden er dan in de tweede slicer geen items geselecteerd mogen worden.
Echter, draaitabellen staan het niet toe dat er GEEN items zijn geselecteerd.

Ik heb daarom in de 2e dataset een 6e name "DUMMY" aangemaakt.
Nu moet dus telkens wanneer de 6e naam in slicer 1 (lees, wanneer een sliceritems is gekoezen dat niet in de 2e slicer voorkomt) is gekozen resulteren in het selecteren van de DUMMY van slicer 2, echter dit lukt mij nu niet, het resultaat nu is dat steeds wanneer de 6e naam is gekozen in de 1e slicer dat dan in de 2e slicer alle items worden geselecteerd.

Knipsel1.PNG

Hieronder de code:

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
Dim sc1 As SlicerCache
Dim sc2 As SlicerCache
Dim si1 As SlicerItem
Dim si2 As SlicerItem

Set sc1 = ThisWorkbook.SlicerCaches("Slicer_Name")
Set sc2 = ThisWorkbook.SlicerCaches("Slicer_Name1")

Application.ScreenUpdating = False
Application.EnableEvents = False

sc2.ClearManualFilter


On Error Resume Next
For Each si2 In sc2.SlicerItems
Set si1 = sc1.SlicerItems(si2.Name)
If Not si1 Is Nothing Then
si2.Selected = si1.Selected
Else
si2.Selected = False
End If
Next si2
On Error GoTo 0

Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

I hoop dat iemand hier me verder kan helpen
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan