• 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.

Slicer van verschillende tabbladen koppelen

Status
Niet open voor verdere reacties.

HeidiAleman

Gebruiker
Lid geworden
5 dec 2022
Berichten
15
Ik heb 2 tabbladen met gegevens waarvan ik beiden een draaitabel heb gemaakt met een slicer. De slicer bevat dezelfde gegevens.Is het mogelijk om hier 1 slicer van te maken?
 
Selecteer de slicer en klik dan op rapportverbindingen op het lint onder Hulpmiddelen voor Slicers. Dan kan je kiezen voor welke draaitabellen je de slicer wilt gebruiken.
 
Daar staat hij dus niet tussen, want het zijn draaitabellen die gebaseerd zijn op verschillende brontabbladen.
 
voorbeeldbestand plaatsen dan wellicht? Maar als het verschillende bronnen zijn, wordt het lastig denk ik. Power Pivot misschien?
 
Laatst bewerkt:
Ik wil dus graag op het totaalblad 1 slicer.

Dit is een sterk versimpeld voorbeeld van mijn werkelijke bestand. Ik heb alleen al meer dan 10000 regels producten. Het is niet mogelijk om er 1 bestand van te maken.
 

Bijlagen

  • Map2.xlsx
    47,6 KB · Weergaven: 12
Je zou dat via de Worksheet_PivotTableUpdate event kunnen realiseren, maar je moet er dan wel zeker van zijn dat je geselecteerde SlicerItem(s) in alle bronnen aanwezig is/zijn, anders krijg je een foutmelding. En in jouw voorbeeld is dat niet het geval, nog afgezien van de tikfout in Goude.
 
Alle sliceritems zijn in alle draaitabellen aanwezig. Hoe werkt deze pivot?
 
Probeer het hier eens mee, zie macro's achter werkblad DT 1 en in Module1.
Omdat niet alle locaties in alle drie de werkbladen aanwezig zijn krijg je een paar foutmeldingen.
 

Bijlagen

  • Pivots.xlsm
    56,1 KB · Weergaven: 15
Een slicer is slechts gekoppeld aan 1 draaitabel(cache)
Dat wil zeggen aan 1 input tabel/range.
Je moet dus met 2 slicers werken.

Of zoals hierboven met VBA een constructie bedenken om ze op die manier te koppelen.
Maar in mijn ervaring zijn dat altijd houtje-touwtje oplossingen die nooit feilloos (blijven) werken.
 
Dat is merkwaardig.

De hulpbestanden geven aan dat een slicercache een collection van Pivottables bevat.
Code:
Sub M_snb()
  Msgbox ActiveWorkbook.SlicerCaches("Slicer_Locatie").PivotTables.Count
End Sub

Het lukt wel om 1 pivottable te koppelen met

Code:
ActiveWorkbook.SlicerCaches("Slicer_Locatie").PivotTables.AddPivotTable Sheet1.PivotTables(1)

Maar niet om de collection uit te breiden.
Bijv. zo:
Code:
     ActiveWorkbook.SlicerCaches("Slicer_Locatie").PivotTables.AddPivotTable Sheet1.PivotTables(1)
     ActiveWorkbook.SlicerCaches("Slicer_Locatie").PivotTables.AddPivotTable Sheet2.PivotTables(1)
     ActiveWorkbook.SlicerCaches("Slicer_Locatie").PivotTables.AddPivotTable Sheet3.PivotTables(1)

Of zo:

Code:
    ActiveWorkbook.SlicerCaches("Slicer_Locatie").PivotTables.AddPivotTable  Array(Sheet1.PivotTables(1), Sheet2.PivotTables(1),  Sheet3.PivotTables(1))

Als ik 3 sliceers maak, kan ik ze synchroniseren met:

Code:
Sub M_snb()
   c00 = ThisWorkbook.ActiveSlicer.ActiveItem.Value

   For Each it In ThisWorkbook.SlicerCaches
      For Each it1 In it.SlicerItems
        it1.Selected = it1.Name = c00
      Next
   Next
End Sub
 
Laatst bewerkt:
suggestie: merge de tabellen via power-query (standaard in excel > 2013) en zorg ervoor dat je een tabel hebt met alle verschillende locaties, dan 1 source en dus 1 slicer nodig
 
Dit klinkt allemaal heel ingewikkeld. Zover reikt mijn excelkennis niet. Is het niet mogelijk om ergens in excel de naam van de locatie in te tikken en de cel waarin deze naam staat in alle slikkers te laten verschijnen?
 
Bovenstaande merge actie is éénmalig en in 1/2 minuutjes voor elkaar zonder enige vorm van VBA
 
Ik zie hoe het moet, en dat zou inderdaad kunnen werken ... ware het niet dat ik al allerlei berekeningen op de 4 verschillende brontabellen heb toegepast. Dan moet ik dus eigenlijk alles opnieuw doen. Dat is teveel werk helaas. Misschien in de toekomst :)


Heel erg bedankt voor het meedenken!
 
Volgende keer je vraag een keer stellen / plaatsen is genoeg
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan