Excel-TippListe mit Datumswerten für mehrere Jahre erstellen

Wie Sie mit Power Query eine Liste mit allen Tagen für mehrere Jahre erstellen – beginnend mit dem 1.1. des Jahres des frühesten Datums und endend mit dem 31.12. des Jahres mit dem letzten Datum der ursprünglichen Liste.

Ausgangssituation: Tabelle mit Datumsangaben und Werten

Sie haben eine Tabelle mit Werten für unterschiedliche Tage. Das Datum und die Werte stehen jeweils in einer Spalte untereinander. Allerdings ist die Liste nicht durchgängig, nicht jeder Tag ist aufgeführt.

Liste mit Angaben zum Datum und entsprechenden Werten

Für eine Auswertung der Daten benötigen Sie eine Liste, in der jeder Tag einzeln in der Spalte Datum aufgeführt ist. Dabei sollen alle Jahre, für die ein Datum in Ihrer Liste steht, vom 01.01. bis zum 31.12. aufgeführt sein.

Ist der erste Eintrag beispielsweise der 03.02.2023 und der letzte Wert der 30.12.2025, dann soll die Datumsliste vom 01.01.2023 bis zum 31.12.2025 reichen. Eine solche Liste erstellen Sie mit Power Query.

Liste mit Datum und Wert in Power Query importieren

Importieren Sie zunächst Ihre bestehende Liste in Power Query. Markieren Sie eine Zelle in der Liste und aktivieren Sie im Menüband die Befehlsfolge Registerkarte Daten > Befehlsgruppe Daten abrufen und transformieren > Befehl Aus Tabelle/Bereich.

Daten aus Excel in Power Query importieren

Da es sich bei der Liste vermutlich um einen normalen Bereich handelt, wird die Liste zunächst in eine intelligente Tabelle umgewandelt.

Es öffnet sich das Dialogfeld Tabelle erstellen. Der Bereich der Liste wird automatisch erkannt und markiert. Da die Liste über eine Beschriftung verfügt, muss das Kontrollkästchen Tabelle hat Überschriften aktiviert sein. Bestätigen Sie die Einstellungen durch Klick auf OK.

Einstellungen zu den zu importierenden Daten

Die Liste wird daraufhin in den Power-Query-Editor geladen.

Dort ist im Folgenden der Name der importierten Tabelle geändert zu Datumstabelle. Doppelklicken Sie dazu den ursprünglichen Namen in der linken Spalte und ändern Sie den Namen entsprechend.

Anschließend ändern Sie noch den Datentyp der ersten Spalte mit dem Datum in das Format Datum. Dazu klicken Sie das kleine Symbol im Spaltentitel links und wählen den entsprechenden Datentyp

Name der Tabelle (Abfrage) in Power Query und Datentyp ändern

Neue Abfrage erstellen

Um nun eine Tabelle mit allen Datumswerten für die jeweiligen Jahre zu erzeugen, erzeugen Sie zunächst eine neue Abfrage. Führen Sie dazu im Menüband die Befehlsfolge Registerkarte Start > Neue Quelle > Andere Quellen > Leere Abfrage aus.

Alternative: Sie klicken im linken, leeren Bereich mit der rechten Maustaste und wählen aus dem Kontextmenü Neue Abfrage > Andere Quellen > Leere Abfrage.

Power-Query-Funktion für eine leere, neue Abfrage

M-Funktion für die Liste aller Tage (Datumswerte)

Um alle Tage für die betroffenen Jahre in einer Liste (Spalte) zu erstellen, müssen Sie eine Datumsreihe generieren. Nutzen Sie hierzu folgenden Code in der Befehlszeile (M-Funktion):

= List.Dates(Date.StartOfYear (List.Min (Table.Column(Datumstabelle, "Datum"))), Number.From(Date.EndOfYear (List.Max (Table.Column(Datumstabelle,"Datum")))) - Number.From(Date.StartOfYear (List.Min(Table.Column(Datumstabelle,"Datum")))) + 1 , #duration(1,0,0,0))

Der Parameter Datumstabelle ist die Tabelle (Quelle), in der die Datumswerte stehen, die Sie betrachten. Der Parameter Datum ist der Name der Spalte, in der die Datumswerte stehen.

Der Code sucht in der Spalte Datum nach dem kleinsten Wert, das erste eingetragene Datum (List.Min) und nimmt dann den Wert für den Beginn des Jahres dieses Datums (Date.StartOfYear), also der 01.01. des gefundenen Jahres.

Entsprechend wird der größte Datumswert (List.Max) gesucht und das Ende des entsprechenden Jahres ermittelt (Date.EndOfYear), also der 31.12. des gefundenen Jahres.

Mit List.Dates() werden dann alle Datumswerte für jeden Tag dazwischen erzeugt.

Alle Tage eines Jahres als Liste in Power Query

Liste in Tabelle verwandeln

Wandeln Sie die Liste jetzt in eine Tabelle um, indem Sie im Menüband die Befehlsfolge Listentools > Transformieren > Zu Tabelle ausführen.

Alternativ: Sie klicken mit der rechten Maustaste auf den Spaltenkopf Liste und wählen aus dem Kontextmenü Zu Tabelle.

Es öffnet sich das Dialogfeld Zu Tabelle. Lassen Sie die Einstellungen unverändert und bestätigen Sie das Dialogfeld durch Klick auf OK.

Liste in eine Tabelle umwandeln

Liste mit Datumswerten nach Excel übergeben

Dann übergeben Sie Ihre Liste wieder an Ihr Tabellenblatt in Excel, indem Sie im Menüband die Befehlsfolge Start > Schließen & laden wählen.

Sie haben nun eine (lange) Liste mit dem Datum für jeden Tag der Jahre, die in Ihrer ursprünglichen Liste aufgeführt sind.

Ergebnis: Liste mit allen Datumswerten (Ausschnitt Anfang und Ende der Liste)

Dazu im Management-Handbuch

Weiterlesen

Vorlagen nutzen

Excel-Tipps