2016-05-25 5 views
0

Ich habe eine Liste von Einheiten, die von einem Geschäft verkauft werden. Jede Zeile beschreibt Datum, Bestellnummer, Anzahl der Einheiten und Kategorie (A und B in diesem Beispiel).DAX-Code, um Bestellungen mit gekreuzten Kategorien zu zählen

Wie kann ich mit nur DAX-Messungen in einer Pivot-Tabelle wissen, wie viele Bestellungen in den Kategorien A und B pro Tag enthalten sind? Ich habe versucht, CALCULATE auf verschiedene Weise, aber ich kann nicht den richtigen Weg finden, es zu tun ...

In diesem Link, den ich Ihnen zeigen, einen Screenshot von einem Probentisch 1

Die Pivot-Tabelle sollte Show:

25/05/2016 3 (orders 100, 104 and 105 have units from categories A and B) 
26/05/2016 1 (order 200 has units from categories A and B) 

Dank

Antwort

0

ein Maß erstellen, das die eindeutige OrderNo zählt. Erstellen Sie einfach Ihre Pivot-Tabelle und verwenden Sie diese Kennzahl. Sie können zwei Ausdrücke für die Kennzahl verwenden.

Excel 2010:

=COUNTROWS(DISTINCT(TableName[OrderNo])) 

Excel 2013+

=DISTINCTCOUNT(TableName[OrderNo]) 

Mit der Maßnahme im Modell erstellt eine Pivot-Tabelle erstellen. Ziehen und Ablegen Date Feld in Zeilen, Category Feld zu Spalten und die erstellte Maßnahme zu Values.

enter image description here

ignorieren die Etiketten auf die Pivot-Tabelle setzen Excel ist mein OS Spracheinstellung Spanisch:

Sie so etwas wie dieses bekommen.


UPDATE: Basierend auf Ihren Kommentar, müssen Sie die unterschiedlichen OrderNo ist, die Kategorien A und B.

Verwenden Sie den folgenden Ausdruck haben:

=CALCULATE (
    COUNTA (TablaName[OrderNo]), 
    CALCULATETABLE (VALUES (TablaName[OrderNo]), TablaName[Category] = "A"), 
    TablaName[Category] = "B" 
) 

Ich dachte an mit intersect Funktion, die nicht in Excel 2010 unterstützt wird, aber dies ist eine allgemeine Möglichkeit, das erwartete Ergebnis zu erhalten.

Dies ist die daraus generierte Pivot-Tabelle.

enter image description here

Hoffentlich ist es das, was Sie suchen, lassen Sie mich wissen, ob es hilft.

+0

Vielen Dank für Ihre Antwort, aber vielleicht war die Frage nicht clear (Ich habe es mit den Daten bearbeitet, die die Pivot-Tabelle anzeigen soll). Wenn ich DISTINCTCOUNT auf diese Weise benutze, bekomme ich nur die Bestellungen mit A (Spalte A) oder Spalte B (Spalte B), aber ich möchte die Anzahl der Bestellungen mit A- und B-Artikeln erhalten. – jormaga

+0

@ user3465608, überprüfen Sie mein Update. ich hoffe es hilft. –

0

Erstellen einer berechneten Spalte mit der folgenden Formel:

= if ( CALCULATE (DistinctCount (mytable [Kategorie]), Filter (alle (mytable), mytable [Datum] = FRÜHER (mytable [Datum ]) & & mytable [OrderNo] = FRÜHER (mytable [OrderNo])), oder (mytable [Kategorie] = "A", mytable [Kategorie] = "B")) = 2, true(), false()) Die frühere Funktion vergleicht Zeilen mit gleichem Datum und Bestellnummer. Die zusätzliche oder Filter, berücksichtigt nur in die Kategorie A und B.

Diese wahr/falsch auf Bestellungen mit der Kategorie A und B zurück Da Sie nicht regelmäßig Zählung tun können, weil Sie mehrere Zeilen für eine BestellungNr. Sie benötigen eine eindeutige Anzahl.

neue Maßnahme:

= CALCULATE (DistinctCount (mytable [OrderNo]), mytable [CalcColumn01] = true())

Verwandte Themen