Power Pivot für die DatenanalyseUmsatz berechnen mit der DAX-Funktion SUMX in Power Pivot

Was die DAX-Funktion SUMX() von SUM() unterscheidet und wie Sie damit aus Menge und Preis eines Produkts den korrekten Umsatz berechnen. Mit Schritt-für-Schritt-Anleitung und Erläuterungen.

In Ihren Daten mit den Tabellen für Bestellungen (Faktentabelle tbl_Bestellungen) und für die Produkte (Dimensionstabelle tbl_Produkte) steht, welche Mengen gekauft wurden und welchen Preis die einzelnen Produkte haben. Nun wollen Sie aus diesen Daten den Umsatz berechnen.

Oft wird er zunächst als berechnete Spalte (zum Beispiel Menge × Stückpreis) angelegt und anschließend summiert. Das funktioniert – ist aber weder speichereffizient noch besonders „Power-Pivot-like“.

Die bessere Lösung ist ein Measure mit der DAX-Funktion SUMX(). Dieser Beitrag erklärt, warum das so ist, wie Sie diese Funktion korrekt einsetzen und anschließend das Modell aufräumen.

Warum eine berechnete Spalte für Umsatz nicht optimal ist

Der einfache oder naheliegende Weg wäre:

  • In der Tabelle tbl_Bestellungen eine berechnete Spalte Umsatz (BS) anlegen: Menge * Stückpreis.
  • In der Pivot-Tabelle die Summe dieser Spalte anzeigen.

Probleme dabei sind:

  • Die berechnete Spalte speichert einen Wert für jede Zeile → dauerhafter Speicherbedarf.
  • Sie legen eine Zwischenrechnung ab, welche Sie später ohnehin nur aggregieren.
  • Mehr Felder in der Feldliste → unnötige Komplexität.

Deshalb gilt folgende Faustregel: Wenn eine Spalte nur erzeugt wird, um sie danach zu aggregieren, ersetzt Sie sie besser durch ein Measure.

Warum SUM() allein oft nicht reicht

Ein naheliegender Versuch wäre nun dieses Measure zu nutzen:

Umsatz := SUM(tbl_Bestellungen[Menge] * tbl_Produkte[Einzelpreis])

Das schlägt fehl, denn SUM() akzeptiert nur eine einzelne Spalte – keinen Ausdruck wie die Multiplikation in diesem Beispiel. Es erscheint eine Fehlermeldung, wenn Sie die Formel überprüfen.

Fehlermeldung bei SUM() und Ausdruck

Sie brauchen also eine Funktion, die zeilenweise einen Ausdruck berechnet und danach summiert.

Die Lösung: SUMX – der Summenprodukt-Ansatz in DAX

In Excel gibt es für solche Fälle die Funktion SUMMENPRODUKT. In DAX ist das Pendant die Funktion SUMX().

SUMX ist ein sogenannter Iterator:

  • Er läuft durch eine Tabelle,
  • berechnet pro Zeile einen Ausdruck und
  • addiert dann alle Ergebnisse.

SUMX besitzt die folgende Syntax:

=SUMX(Tabelle;Ausdruck)

  • Tabelle: die Tabelle, die zeilenweise durchlaufen wird.
  • Ausdruck: der Ausdruck, der in jeder Zeile berechnet werden soll.

Am Ende summiert SUMX die Ergebnisse aller Zeilen.

Standardfall: Menge und Preis stehen in derselben Tabelle

Befinden sich Menge und Preis in der gleichen Tabelle, dann können Sie mit der folgenden Formel den Umsatz in einem Measure berechnen:

Umsatz := SUMX(tbl_Bestellungen; tbl_Bestellungen[Menge] * tbl_Bestellungen[Einzelpreis])

Im ersten Argument legen Sie fest, welche Tabelle zeilenweise mit der Funktion SUMX durchgegangen werden soll:

:= SUMX(tbl_Bestellungen; tbl_Bestellungen[Menge] * tbl_Bestellungen[Einzelpreis])

Dies im Beispiel die Tabelle tbl_Bestellungen.

Anschließend legen Sie im zweiten Argument (Ausdruck) den Rechenvorgang pro Zeile fest.

:= SUMX(tbl_Bestellungen; tbl_Bestellungen[Menge] * tbl_Bestellungen[Einzelpreis])

Im letzten Schritt werden die Ergebnisse pro Zeile dann summiert.

Alternativer Fall: Menge und Preis stehen in unterschiedlichen Tabellen

In diesem Beispiel ist der Einzelpreis aber in der Tabelle tbl_Produkte hinterlegt. Sie müssen den Preis daher je Zeile mit der Funktion RELATED() in die entsprechende Zeile der Tabelle tbl_Bestellungen holen. Das Measure lautet deshalb:

Umsatz:=SUMX(tbl_Bestellungen;tbl_Bestellungen[Menge] * RELATED(tbl_Produkte[Einzelpreis]))

Und so definieren Sie nun das Measure in Power Pivot: Aktivieren Sie im Menüband die Befehlsfolge Registerkarte Power Pivot > Befehlsgruppe Berechnungen > Befehl Measures > Befehl Neues Measure.

Menü: Neues Measure in Power Pivot erstellen

Es öffnet sich das Dialogfeld Measure.

Erfassen hier die oben genannte Formel und bestätigen Sie das Measure, indem Sie das Dialogfeld durch Klick auf OK schließen.

Eingabemaske für das Measure

Nach der Definition des Measures Umsatz können Sie es wie gewohnt in Ihren Pivot-Tabellen einsetzen. In der folgenden Abbildung wird beispielsweise der Umsatz pro Kundenname ausgegeben.

Anwendung des Measures in der Pivot-Tabelle

Vorteile von SUMX gegenüber Hilfsspalten

  • Speichereffizienz: Keine zusätzlichen Millionen Zellwerte im Modell.
  • Schnelligkeit: Modelle laden und berechnen schneller.
  • Flexibilität: Formeln sind zentral steuerbar und leicht anpassbar.
  • Sauberkeit: Die Feldliste bleibt schlank – keine Hilfsspalten, die nur für Aggregationen gedacht sind.
  • Wiederverwendbarkeit: Measures sind in allen Pivot-Tabellen nutzbar.

Fazit

Mit SUMX haben Sie eine der wichtigsten DAX-Funktionen kennengelernt. Sie ersetzt in vielen Fällen Hilfsspalten und macht Ihr Modell deutlich effizienter.

Wenn Sie eine berechnete Spalte nur deshalb hinzufügen, um ihre Werte später zu summieren, sollten Sie stattdessen ein Measure wie mit SUMX verwenden.

So bleibt Ihr Datenmodell schlank, schnell und professionell – und Sie behalten die volle Kontrolle über Ihre Kennzahlen.

Dazu im Management-Handbuch

Vorlagen nutzen

Weitere Kapitel zum Thema