2016-10-17 3 views
1

Dies ist meine erste Frage hier und ich werde mein Bestes versuchen, meine Frage auf eine gute Weise zu stellen.Sumif Äquivalent für Power Pivot Messberechnungen

Ich bin sehr erfahren in der Verwendung von Excel, aber leise neu zu den Elektrowerkzeugen. Ich habe ein Datenmodell in der folgenden Art und Weise

Tabelle Salesdata ein:

Day | Amount Ordered | Amount Sent | toBeAchived (Service Level per Month)* 
1   10    10      87,5% 
2   20    15      87,5% 
3   15    15      87,5% 
.. 
51   20    18      90,0% 

Tischkalender:

Day | Month 
1  1 
2  1 
3  1 
..  
51  2 

ich dann ein Maß erstellt: Service Level: = SUMME (bestellt)/Summe (gesendeter Betrag)

Wenn ich jetzt eine Pivot-Tabelle erstelle, kann ich den Monat aggregieren und den Service-Level von zum Beispiel Monat 1 sehen.

Jetzt möchte ich ein Diagramm erstellen, mit Tagen auf der X-Achse, aber mit dem Mothly Average Service Level, aber seit seinem disaggregiert bekomme ich das Maß täglich.

Also was ich brauche, ist ein Sumif (Menge bestellt, Monat = @Monat), die in einer Excel-Tabelle einfach wäre.

* ich berechnen Funktion wie diese als CalculatedColumn versucht: berechnen (sum ('Sales Tabelle' [bestellt]), Kalender [Monat] = Kalender [Monat])

natürlich, das nicht Arbeit. Die Frage ist also, wie kann ich den Filter in der CALCULATE-Funktion auf den @Month-Wert für jede Zeile setzen?

Vielen Dank für Ihre Hilfe im Voraus

Antwort

1

Wenn ich verstanden, was ich Ihnen bieten die Service Level pro Monat Maßnahme zur Berechnung einer Antwort bitten. Es ist mir jedoch nicht klar, wie Sie den durchschnittlichen Service-Level pro Monat basierend auf diesen monatlichen Werten berechnen, da der Durchschnittswert dem Service-Level pro Monat entspricht. In Ihrem Beispiel wird der Durchschnitt für den Monat 187.5 sein , Recht?

Erstellen Sie zunächst eine berechnete Spalte namens SalesMonth in der SalesData Tabelle mit dem folgenden Ausdruck:

= RELATED ('Calendar'[Month]) 

Hinweis, bevor die zuvor berechnete Spalte erstellen Sie eine Beziehung erstellen müssen (wenn noch nicht existiert) zwischen SalesData Tabelle und Calendar Tabelle mit Tag-Spalte in beiden Tabellen.

nun ein Maß für die Gesamtmenge erstellen bestellt monatlich:

Ordered Monthly := 
    CALCULATE (
    SUM (SalesData[Amount Ordered]), 
    FILTER (
     ALL (SalesData), 
     COUNTROWS (
      FILTER (SalesData, SalesData[SalesMonth] = EARLIER (SalesData[SalesMonth])) 
     ) 
    ) 

)

Die gleiche Maßnahme muss für Gesamtbetrag monatlich gesendet erstellt werden:

Sent Monthly:= 
CALCULATE (
    SUM (SalesData[Amount Sent]), 
    FILTER (
    ALL (SalesData), 
    COUNTROWS (
     FILTER (SalesData, SalesData[SalesMonth] = EARLIER (SalesData[SalesMonth])) 
     ) 
    ) 
) 

Schließlich können Sie Erstellen Sie das Service Level per Month Maß mit diesem Ausdruck:

Service Level per Month := 
DIVIDE ([Ordered Monthly], [Sent Monthly], BLANK()) 

Dies ist ein Beispiel der erzeugten Maßnahmen:

enter image description here

Hinweis Tage von 1 bis 5 entsprechen Monat 1 während 34 und 35 Tagen mit Monat entsprechen 2.

Lassen Sie mich wissen, wenn das hilft.

+0

Sorry für die späte Antwort, aber das ist genau das, was ich brauchte! – FloLie

Verwandte Themen