ALLEXCEPT
Gilt für:berechnete Spaltenberechnete TabellenMeasuresvisuelle Berechnungen
Entfernt alle Kontextfilter in der Tabelle mit Ausnahme von Filtern, die auf die angegebenen Spalten angewendet wurden.
Syntax
ALLEXCEPT(<table>,<column>[,<column>[,…]])
Parameter
Begriff | Definition |
---|---|
table | Die Tabelle, über die alle Kontextfilter entfernt werden, mit Ausnahme von Filtern für die Spalten, die in nachfolgenden Argumenten angegeben sind |
column | Die Spalte, für die Kontextfilter beibehalten werden müssen. |
Das erste Argument für die ALLEXCEPT-Funktion muss ein Verweis auf eine Basistabelle sein. Alle nachfolgenden Argumente müssen Verweise auf Basisspalten sein. Tabellen- oder Spaltenausdrücke können nicht zusammen mit der ALLEXCEPT-Funktion verwendet werden.
Rückgabewert
Eine Tabelle, in der alle Filter entfernt wurden, mit Ausnahme der Filter für die angegebenen Spalten.
Bemerkungen
Diese Funktion wird nicht allein verwendet, sondern dient als Zwischenfunktion, die verwendet werden kann, um die Ergebnisse zu ändern, für die andere Berechnungen ausgeführt werden.
ALL und ALLEXCEPT können in verschiedenen Szenarien eingesetzt werden:
Funktion und Nutzung BESCHREIBUNG ALL(Table) Entfernt alle Filter aus der angegebenen Tabelle. Mit ALL(Table) werden alle Werte in der Tabelle zurückgegeben. Dabei werden alle Filter aus dem Kontext entfernt, die ansonsten möglicherweise angewendet worden wären. Diese Funktion ist nützlich, wenn Sie mit vielen Gruppierungsebenen arbeiten und eine Berechnung erstellen möchten, mit der das Verhältnis eines aggregierten Werts zum Gesamtwert erstellt wird. ALL (Column[, Column[, …]]) Entfernt alle Filter aus den angegebenen Spalten in der Tabelle. Alle anderen Filter in anderen Spalten in der Tabelle werden weiterhin angewendet. Alle Spaltenargumente müssen aus einer Tabelle stammen. Die Variante „ALL(Column)“ ist nützlich, wenn Sie die Kontextfilter für mindestens eine bestimmte Spalte entfernen und alle anderen Kontextfilter beibehalten möchten. ALLEXCEPT(Table, Column1 [,Column2]...) Entfernt alle Kontextfilter in der Tabelle mit Ausnahme der Filter, die auf die angegebenen Spalten angewendet werden. Dies ist ein praktisches Schnellverfahren in Situationen, in denen Sie die Filter für viele, aber nicht für alle Spalten in einer Tabelle entfernen möchten. Die Verwendung dieser Funktion im DirectQuery-Modus wird nicht unterstützt, wenn sie in berechneten Spalten oder RLS-Regeln (Row-Level Security) eingesetzt wird.
Beispiel
Die folgende Measureformel addiert SalesAmount_USD und entfernt mit der ALLEXCEPT-Funktion Kontextfilter in der DateTime-Tabelle, es sei denn, der Filter wurde auf die Spalte „CalendarYear“ angewendet.
= CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), ALLEXCEPT(DateTime, DateTime[CalendarYear]))
Da die Formel ALLEXCEPT verwendet, entfernt sie jedes Mal alle Slicerfilter, wenn eine Spalte außer „CalendarYear“ aus der DateTime-Tabelle zum Segmentieren einer Visualisierung verwendet wird, und gibt einen Wert entsprechend der Summe von „SalesAmount_USD“ aus. Wenn jedoch die Spalte „CalendarYear“ zum Segmentieren der Visualisierung verwendet wird, werden andere Ergebnisse ausgegeben. Da CalendarYear als Argument für ALLEXCEPT angegeben ist, wird beim Segmentieren der Daten auf das Jahr ein Filter auf die Jahre auf Zeilenebene angewendet.