Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: YTD in Power Query

YTD in Power Query
11.12.2022 13:19:10
Henry
Hallo liebes Forum,
ich benötige mal wieder eure Hilfe.
Ich habe in Power Query eine Tabelle mit den folgenden Spalten
1. Spalte: Profit Center
2. Spalte: Betrag
3. Spalte: Datum
Ich würde nun gerne eine weitere benutzerdefinierte 4. Spalte anlegen, die mir die kumulierten Werte je Profit Center in Abhängigkeit zum Datum zeigt.
Bsp.:
1. Spalte
Profit Center 1
Profit Center 1
Profit Center 1
Profit Center 2
Profit Center 2
2. Spalte
1
2
3
4
5
3. Spalte
01.01.2022
01.05.2022
01.07.2022
01.01.2022
01.05.2022
4. Spalte
1
3
6
4
9
Ich würde mich sehr freuen wenn mir jemand sagen könnte, wie ich das hinbekommen kann.
Liebe Grüße
Henry
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: YTD in Power Query
11.12.2022 19:43:20
Yal
Hallo Henry,
das kumulatives Summieren ist in Power Query eine Schwachstelle. Es gibt einigen Vorgehensweise, aber nichts einfaches.
Im Fall eines "YTD" würde ich eine separate Stammdaten-Liste bei der
_ 12 (erste Spalte) zu "YTD Dez" (zweite Spalte) zugeordnet ist,
_ 11 zu "YTD Dez" und zu"YTD Nov"
_ 10 zu Dez, Nov, Okt
_ usw.
Dann kann man einen Join machen, was zu einem Vervielfältigung der ursprüngliche Daten, aber einen Gruppierung ermöglicht.
Alternativ wäre mit Power BI, wo eine DAX-Formel TotalYTD gibt.
VG
Yal
Anzeige
AW: YTD in Power Query
12.12.2022 08:14:57
Luschi
Hallo Henry,
wenn du 1 Excel-Demodatei bereit stellst, helfe ich dir gerne - habe da mindestens 4 PQ-M Lösungen parat. Aber das ist nicht ganz trivial.
Gruß von Luschi
aus klein-Paris
AW: YTD in Power Query
12.12.2022 08:31:34
Henry
Guten Morgen Luschi aus klein Paris,
ich freue mich sehr, dass du mir helfen möchtest.
Ich habe mal beispielhaft eine Excel-Datei erstellt, die dem Original sehr nahe kommt.
siehe folgender Link:
https://www.herber.de/bbs/user/156655.xlsx
Liebe Grüße
Henry
Anzeige
AW: YTD in Power Query
12.12.2022 09:26:08
Luschi
Hallo Henry,
hier (m)ein Lösungsansatz, die Quelle des M-Codes steht als Link in der Tabelle.
https://www.herber.de/bbs/user/156656.xlsx
Gruß von Luschi
aus klein-Paris
AW: YTD in Power Query
12.12.2022 12:01:55
Henry
Hallo Luschi aus klein Paris,
es klappt alles genau so wie ich es mir vorgestellt habe!
Vielen lieben Dank für deine Hilfe.
Liebe Grüße
Henry
Anzeige
AW: YTD in Power Query
16.12.2022 10:39:13
Henry
Hallo Luschi aus klein Paris,
ich muss nochmal auf meine Problemstellung zurückkommen.
Dein Lösungsansatz, den du mir damals gegeben hast, tut eigentlich genau das, was es soll.
Es kommt hier allerdings zu einem Problem, wenn die Monate nicht von 1 bis 12 gehen.
Angenommen für einen Profit Center liegen folgende Werte vor:
Spalte 1 (Profit Center):
Profit Center 1
Profit Center 1
Profit Center 1
Spalte 2 (Betrag):
1
2
3
Spalte 3 (Monat):
2
4
6
Spalte 4 (Ergebnis)
2
6
12
Wenn ich nun in meinem Bericht Monat 12 auswähle, ist der kumulierte Wert 0.
Eigentlich müsste er aber 12 sein.
Ich hoffe, du verstehst was ich meine.
Ist es möglich in Power Query die Tabelle so zu gestalten, dass für einen Profit Center immer die Monate 1 bis 12 stehen.
Wenn ein Monat keinen Wert hat, dass ist der Betrag 0.
Damit wäre das Problem denke ich gelöst.
LG Henry
Anzeige
AW: YTD in Power Query
12.12.2022 10:32:18
ChrisL
Hi
Jahreswechsel ist mitberücksichtigt.
Zudem kommt die Lösung auch ohne Sortierung der Daten aus, was sich bei grösseren Datenmengen im Gegenzug negativ auf die Aktualisierungsdauer auswirken könnte.
Benutzerdefinierte Spalte:

=List.Sum(Table.SelectRows(Quelle, (r)  => r[Profit Center]=[Profit Center] and r[Year]=[Year] and r[Date]
Quelle (nur Verbindung)

let
Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Figure", type text}, {"Profit Center", type text}, {"Date", type date}, {"Month", Int64.Type}, {"Year", Int64.Type}, {"Amount", Int64.Type}})
in
#"Geänderter Typ"
Abfrage1

let
Quelle = Quelle,
#"Hinzugefügte benutzerdefinierte Spalte1" = Table.AddColumn(Quelle, "YTD", each List.Sum(Table.SelectRows(Quelle, (r) => r[Profit Center]=[Profit Center] and r[Year]=[Year] and r[Date]
cu
Chris
Anzeige
AW: YTD in Power Query
12.12.2022 11:06:20
Henry
Hallo Chris,
vielen Dank für deine Hilfe.
Mir ist allerdings nicht ganz klar wo ich die Quelle und die Abfrage 1 einfügen soll.
Ich bin recht neu auf dem Gebiet Power Query und würde mich freuen wenn du mir dies nochmal erklären könntest.
Liebe Grüße
Henry
AW: YTD in Power Query
12.12.2022 11:16:33
ChrisL
Hi Henry
- Tabelle markieren, Menü Daten, aus Tabelle/Bereich
- Typenkonvertierung durchführen (meist automatisch)
- Die Abfrage als "Quelle" speichern (nur Verbindung)
- neue leere Abfrage
- in die Befehlszeile schreiben: =Quelle
- Benutzerdefinierte Spalte hinzufügen

=List.Sum(Table.SelectRows(Quelle, (r)  => r[Profit Center]=[Profit Center] and r[Year]=[Year] and r[Date]
Im erweiterten Editor sollte der Code der beiden Abfragen dann identisch mit dem gezeigten M-Code sein.
cu
Chris
Anzeige
AW: YTD in Power Query
12.12.2022 11:27:36
Luschi
Hallo ChrisL,
gibt es mehrere Einträge für den selben Tag und dem gleichen 'Profit Center' mit Werten, dann errechnet Deine Funktion immer den Endbestand einer vorhandenen Bedingung, es wird aber nicht kumuliert.
https://www.herber.de/bbs/user/156660.xlsx
Gruß von Luschi
aus klein-Paris
PS: ich habe einfach die Einträge der vorhandenen Tabelle x-mal kopiert.
Anzeige
AW: YTD in Power Query
12.12.2022 12:56:37
ChrisL
Hi Luschi
An die Möglichkeit mehrerer Einträge am gleichen Tag, habe ich nicht gedacht. Danke für den Hinweis.
Kumuliert wird schon (Tagesendstand), aber nicht zeilenweise. Wenn die Daten unsortiert sind, müsste man sich fragen, ob die Logik für die zeilenweise Addition innerhalb vom gleichen Tag korrekt wäre bzw. stellt sich die Frage, wie chaotisch die Daten abgelegt wurden. Persönlich finde ich es immer etwas "gefährlich", wenn das korrekte Resultat ausschliesslich von der Sortierung abhängt (ohne eindeutiges Kriterium wie Time-Stamp oder Index). In solchen Fällen würde ich wahrscheinlich eher auf den Tagesendsaldo gruppieren.
cu
Chris
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

YTD-Berechnung in Power Query


Schritt-für-Schritt-Anleitung

Um eine kumulierte Summe (YTD) in Power Query zu berechnen, folge diesen Schritten:

  1. Daten importieren: Importiere deine Tabelle in Power Query, die die Spalten "Profit Center", "Betrag" und "Datum" enthält.
  2. Benutzerdefinierte Spalte hinzufügen: Gehe zu "Hinzufügen" > "Benutzerdefinierte Spalte" und verwende den folgenden M-Code, um die kumulierten Werte zu berechnen:
    = List.Sum(Table.SelectRows(Quelle, (r) => r[Profit Center] = [Profit Center] and r[Date] <= [Date])[Betrag])
  3. Sortiere deine Daten: Stelle sicher, dass deine Tabelle nach "Profit Center" und "Datum" sortiert ist, um die korrekte Berechnung zu gewährleisten.
  4. Abfrage schließen: Klicke auf "Schließen & Laden", um die Änderungen zu speichern und die Tabelle in Excel zu aktualisieren.

Häufige Fehler und Lösungen

  • Fehler: Kumulierte Werte sind nicht korrekt: Überprüfe, ob deine Daten korrekt sortiert sind. Eine falsche Sortierung kann die kumulierte Summe beeinträchtigen.
  • Fehler: Leere Werte werden nicht berücksichtigt: Füge eine Bedingung hinzu, die leere Werte in der Spalte "Betrag" auf 0 setzt, um die Berechnung nicht zu stören:
    = if [Betrag] = null then 0 else [Betrag]

Alternative Methoden

Wenn Power Query Schwierigkeiten beim kumulierten Summieren hat, kannst du auch Power BI verwenden. Mit DAX-Formeln wie TOTALYTD kannst du kumulierte Werte einfach berechnen. Hier ist ein Beispiel:

YTD_Summe = TOTALYTD(SUM(Tabelle[Betrag]), Tabelle[Datum])

Praktische Beispiele

Angenommen, du hast folgende Tabelle:

Profit Center Betrag Datum
Profit Center 1 1 01.01.2022
Profit Center 1 2 01.05.2022
Profit Center 2 3 01.01.2022
Profit Center 2 4 01.05.2022

Die Berechnung der kumulierten Summe ergibt:

Profit Center Betrag Datum Kumulierte Summe
Profit Center 1 1 01.01.2022 1
Profit Center 1 2 01.05.2022 3
Profit Center 2 3 01.01.2022 3
Profit Center 2 4 01.05.2022 7

Tipps für Profis

  • Nutze die Funktion "Gruppieren nach", um deine Daten vor der Berechnung der kumulierten Summe zu aggregieren.
  • In Power BI kannst du die DAX-Formeln Übersicht PDF nutzen, um dir einen Überblick über nützliche Funktionen zu verschaffen.
  • Achte darauf, dass deine Datumswerte in der richtigen Formatierung vorliegen, um eine reibungslose Berechnung zu garantieren.

FAQ: Häufige Fragen

1. Wie kann ich YTD in Excel berechnen?
Du kannst die EOMONTH-Funktion nutzen, um die Enddaten jeden Monats zu ermitteln und dann die kumulierte Summe berechnen.

2. Was ist der Unterschied zwischen Power Query und Power BI?
Power Query ist ein Datenverarbeitungstool innerhalb von Excel, während Power BI eine umfassende Business-Intelligence-Lösung ist, die erweiterte Visualisierungen und DAX-Formeln bietet.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige