SlicerCache Auslesen in Excel
Schritt-für-Schritt-Anleitung
Um die ausgewählten SlicerItems aus einem SlicerCache in Excel auszulesen, kannst du die folgende VBA-Funktion verwenden. Diese Funktion berücksichtigt nur die sichtbaren SlicerItems und filtert die aus, die keine Daten haben.
- Öffne Excel und drücke
ALT + F11
, um den VBA-Editor zu starten.
- Klicke auf
Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
- Kopiere den nachstehenden Code in das Modul:
Public Function GetSlicerSelection(Datenquelle As String) As String
Dim oSlicerCache As SlicerCache
Dim oSlicerItem As SlicerItem
Dim strSlicerAuswahl As String
Application.Volatile
Set oSlicerCache = ActiveWorkbook.SlicerCaches(Datenquelle)
For Each oSlicerItem In oSlicerCache.VisibleSlicerItems
If oSlicerItem.Selected And oSlicerItem.HasData = True Then
strSlicerAuswahl = strSlicerAuswahl & oSlicerItem.Value & " " & vbCrLf
End If
Next oSlicerItem
GetSlicerSelection = strSlicerAuswahl
End Function
- Schließe den VBA-Editor und gehe zurück zu Excel.
- Du kannst die Funktion jetzt in einer Zelle verwenden, z.B.
=GetSlicerSelection("DeinSlicerName")
.
Häufige Fehler und Lösungen
-
Problem: Die Funktion gibt alle SlicerItems aus, auch die nicht sichtbaren.
- Lösung: Stelle sicher, dass du die
VisibleSlicerItems
und die HasData
-Eigenschaft in deiner Schleife verwendest, wie im obigen Code beschrieben.
-
Problem: Fehler beim Zugriff auf ActiveWorkbook.SlicerCaches
.
- Lösung: Überprüfe, ob der angegebene
Datenquelle
-Name korrekt ist und der Slicer existiert.
Alternative Methoden
Falls du die SlicerItems nicht per VBA auslesen möchtest, kannst du auch:
- PivotTable-Funktionen verwenden: Wenn dein Slicer mit einer PivotTable verbunden ist, kannst du die Filter direkt in der PivotTable nutzen.
- Power Query: Importiere die Daten und filtere sie dort basierend auf den Slicer-Auswahlen.
Praktische Beispiele
Angenommen, du hast einen Slicer mit dem Namen "ProduktSlicer". Um die ausgewählten Produkte auszulesen, nutze die Funktion wie folgt:
=GetSlicerSelection("ProduktSlicer")
Dies gibt dir eine Liste der aktuell ausgewählten Produkte zurück.
Tipps für Profis
- Nutze
Application.Volatile
, um sicherzustellen, dass die Funktion bei jedem Berechnen aktualisiert wird.
- Experimentiere mit verschiedenen SlicerCaches, um den vollen Umfang der
slicercaches vba
-Funktionen zu verstehen.
- Erwäge, Fehlerbehandlungen in deinen Code einzufügen, um unerwartete Probleme zu vermeiden.
FAQ: Häufige Fragen
1. Wie kann ich alle SlicerItems eines SlicerCache auslesen?
Verwende die SlicerItems
-Eigenschaft anstelle von VisibleSlicerItems
. Beachte, dass dies auch ausgeblendete Items zurückgibt.
2. Funktioniert dies in allen Excel-Versionen?
Die gezeigte Methode ist für Excel 2013 und spätere Versionen geeignet, die die SlicerCache
-Objekte unterstützen.