ALLEXCEPT-Funktion
Entfernt alle Kontextfilter in der Tabelle mit Ausnahme der Filter für die angegebenen Spalten.
Syntax
ALLEXCEPT(<table>,<column>[,<column>[,…]])
Parameter
Ausdruck |
Definition |
---|---|
table |
Die Tabelle, deren Kontextfilter entfernt werden, außer den Filtern der Spalten, die in nachfolgenden Argumenten angegeben werden. |
column |
Die Spalte, deren Kontextfilter beibehalten werden sollen. |
Das erste Argument der ALLEXCEPT-Funktion muss ein Verweis auf eine Basistabelle sein. Alle nachfolgenden Argumente müssen Verweise auf Basisspalten sein. Sie können keine Tabellenausdrücke oder Spaltenausdrücke mit der ALLEXCEPT-Funktion verwenden.
Rückgabewert
Eine Tabelle mit allen entfernten Filtern mit Ausnahme der Filter für die angegebenen Spalten.
Hinweise
Diese Funktion wird nicht eigenständig sondern als Zwischenfunktion verwendet, um den Satz von Ergebnissen zu ändern, für die andere Berechnungen durchgeführt werden.
Wie in der folgenden Tabelle beschrieben, können Sie die ALL-Funktion und die ALLEXCEPT-Funktion in anderen Szenarien verwenden.
Funktion und Verwendung |
Beschreibung |
---|---|
ALL(Table) |
Entfernt alle Filter für die angegebene Tabelle. ALL(Table) gibt alle Werte in der Tabelle zurück und entfernt alle Filter. Diese Funktion ist nützlich, wenn Sie mit vielen Gruppierungsebenen arbeiten und eine Berechnung erstellen möchten, die das Verhältnis eines aggregierten Werts zum Gesamtwert ergibt. |
ALL (Column[, Column[, …]]) |
Entfernt alle Filter aus den angegebenen Spalten in der Tabelle. Alle anderen Filter bleiben in Kraft. Alle Spaltenargumente müssen von der gleichen Tabelle stammen. Die ALL(Column)-Variante ist nützlich, um die Kontextfilter für eine bzw. mehrere bestimmte Spalten zu entfernen und alle anderen Kontextfilter beizubehalten. |
ALLEXCEPT(Table, Column1 [,Column2]...) |
Entfernt alle Kontextfilter in der Tabelle mit Ausnahme der Filter für die angegebenen Spalten. Dies ist eine zweckmäßig Möglichkeit, wenn die Filter vieler aber nicht aller Spalten in einer Tabelle entfernt werden sollen. |
Beispiel
Im folgenden Beispiel wird eine Formel für ein Measure dargestellt. Weitere Informationen dazu, wie Measures erstellt werden, finden Sie unter Erstellen eines Measures in einer PivotTable oder in einem PivotChart.
Von der Formel wird "SalesAmount_USD" addiert und die ALLEXCEPT-Funktion verwendet, um alle Kontextfilter für die Tabelle "DateTime" (außer für die CalendarYear-Spalte) zu entfernen.
Hinweis |
---|
Im Beispiel oben werden die Tabellen "ResellerSales_USD" und "DateTime" aus der DAX-Beispielarbeitsmappe verwendet. Weitere Informationen zu Beispielen finden Sie unter Abrufen von Beispieldaten. |
=CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), ALLEXCEPT(DateTime, DateTime[CalendarYear]))
Durch die Verwendung von ALLEXCEPT werden jedes Mal, wenn eine Spalte aus der Tabelle "DateTime" (außer "CalendarYear") verwendet wird, um die PivotTable in Slices aufzuteilen, alle Slicerfilter entfernt, sodass ein der Summe von "SalesAmount_USD" entsprechender Wert als Spaltenbezeichnungswert bereitgestellt wird (siehe Tabelle 1).
Wenn jedoch die Spalte "CalendarYear" verwendet wird, um die PivotTable in Slices aufzuteilen, erhalten Sie ein anderes Ergebnis. Da "CalendarYear" als Argument für ALLEXCEPT fungiert, wird ein Filter auf Zeilenebene auf die Jahrwerte angewendet, wenn die Daten anhand des Jahrs in Slices aufgeteilt werden (siehe Tabelle 2). Wenn Sie diese Tabellen vergleichen, können Sie das Verhalten von ALLEXCEPT() besser nachvollziehen.