Freigeben über


ALLEXCEPT-Funktion (DAX)

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 außer Kraft gesetzten 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.

HinweisHinweis

Im Beispiel oben werden die Tabellen "ResellerSales_USD" und "DateTime" vom DAX-Beispielarbeitsblatt verwendet. Weitere Informationen zu Beispielen finden Sie unter Abrufen von Beispieldaten für PowerPivot.

=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 Datenschnittfilter entfernt, sodass ein der Summe von "SalesAmount_USD" entsprechender Wert als Spaltenbeschriftungswert 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 Jahres in Slices aufgeteilt werden (siehe Tabelle 2). Wenn Sie diese Tabellen vergleichen, können Sie das Verhalten von ALLEXCEPT() besser nachvollziehen.

Siehe auch

Verweis

Andere Ressourcen