Excel mit ChatGPTPower-Query-Abfragen mit ChatGPT schreiben lassen
Der Praxisfall
Power Query ist mächtig – aber M-Code ist für viele Excel-Anwender schwer zugänglich. Dabei ist Power Query eines der wertvollsten Werkzeuge in Excel. Es ist ideal für:
- Datenbereinigung
- Transformation
- Automatisierung
- Zusammenführen von Tabellen
- ETL-Prozesse (Daten aus unterschiedlichsten Quellen extrahieren, transformieren und laden)
- Reporting-Vorbereitung
Doch sobald die Oberfläche („Klicken statt Programmieren“) an ihre Grenzen stößt, benötigt man M-Code – die Programmiersprache hinter Power Query. Viele Anwender scheuen diese Sprache, denn:
- sie wirkt technisch,
- die Dokumentation ist spärlich,
- Beispiele im Netz sind komplex,
- Fehlermeldungen sind kryptisch und
- die Logik unterscheidet sich von Excel.
Genau hier setzt ChatGPT an.
ChatGPT erstellt komplette Power-Query-Abfragen – nicht nur einzelne Schritte
Im Gegensatz zur Power-Query-Oberfläche kann ChatGPT:
- M-Code vollständig schreiben
- Transformationen logisch strukturieren
- Variablen sinnvoll benennen
- Zwischenschritte dokumentieren
- Custom Functions erzeugen
- Fehlerfälle berücksichtigen
- Optimierungen vorschlagen
Damit wird ChatGPT zu einem vollwertigen Power-Query-Architekten, der M-Code generiert, den viele Anwender selbst nie geschrieben hätten.
Ihr Ziel ist nun:
- Artikelnummer trennen (Präfix und Nummer)
- Kommentare bereinigen (Text nach / soll entfernt werden)
- Gesamtpreis berechnen (Menge × Preis)
- Duplikate entfernen
- Datentypen setzen
- sortieren
- fertige Tabelle ausgeben
Statt selbst unzählige Klicks zu machen oder M-Code zu schreiben, formulieren Sie eine einfache Aufgabenbeschreibung für ChatGPT.
Beispiel-Prompt an ChatGPT für die Power-Query-Abfrage
„Bitte erstelle eine komplette Power-Query-Abfrage in M-Code.
Die Abfrage soll:
– die Datei orders.csv importieren, welche die folgende Struktur hat (dazu laden Sie die entsprechende CSV-Datei bei ChatGPT hoch)
– Artikel in Präfix und Nummer teilen
– Kommentare bereinigen (Text vor erstem Slash)
– Gesamtpreis berechnen
– Datentypen setzen
– Duplikate nach BestellNr entfernen
– nach Datum absteigend sortieren
Gib den vollständigen M-Code aus und erkläre die Schritte.“
Beispiel: Vollständiger M-Code, wie ChatGPT ihn generiert
ChatGPT liefert dann folgendes Ergebnis:
let
Quelle = Csv.Document(
File.Contents("C:\Daten\orders.csv"),
[Delimiter=",", Columns=6, Encoding=65001, QuoteStyle=QuoteStyle.None]
),
Tabelle = Table.PromoteHeaders(Quelle, [PromoteAllScalars=true]),
// Datentypen setzen
Typen = Table.TransformColumnTypes(Tabelle, {
{"BestellNr", Int64.Type},
{"Artikel", type text},
{"Menge", Int64.Type},
{"Preis", type number},
{"Datum", type date},
{"Kommentar", type text}
}),
// Spalte Artikel aufteilen
ArtikelSplit = Table.SplitColumn(
Typen,
"Artikel",
Splitter.SplitTextByDelimiter("-", QuoteStyle.Csv),
{"ArtikelPrefix", "ArtikelNummer"}
),
// Kommentare bereinigen (Text vor dem ersten "/")
KommentarBereinigt = Table.TransformColumns(
ArtikelSplit,
{{"Kommentar", each Text.BeforeDelimiter(_, "/"), type text}}
),
// Gesamtpreis berechnen
Gesamtpreis = Table.AddColumn(
KommentarBereinigt,
"Gesamt",
each [Menge] * [Preis],
type number
),
// Duplikate entfernen
OhneDoppelte = Table.Distinct(Gesamtpreis, {"BestellNr"}),
// Sortieren
Sortiert = Table.Sort(OhneDoppelte, {{"Datum", Order.Descending}})
in
Sortiert
Warum ChatGPT so wertvoll ist – Hintergrundwissen
Die Power-Query-Oberfläche ist begrenzt. Viele Schritte (Klicken → „Spalte teilen“, „Werte ersetzen“ usw.) funktionieren nur für einfache Transformationen. Für komplexere Aufgaben benötigt man:
- Table.*-Funktionen
- List.*-Funktionen
- Text.*-Funktionen
- Record.*-Funktionen
- Funktionen höherer Ordnung
- Custom Functions
- Verschachtelungen
ChatGPT beherrscht all diese Aspekte.
M-Code ist eine funktionale Sprache und verwendet deshalb keine Schleifen (for/while), keine Variablen im klassischen Sinne und keine modifizierbaren Werte. Alles sind Ausdrücke, keine Befehle. Das erschwert den Einstieg.
ChatGPT dagegen:
- erkennt Muster
- übersetzt Logik in funktionalen Stil
- variiert Code auf Wunsch
- generiert lesbare Strukturen
ChatGPT kann M-Code erklären und verbessern
Beispiel: Sie kopieren einen bestehenden M-Code in ChatGPT und fragen:
„Was macht dieser Code? Welche Schwachstellen hat er? Kann man ihn vereinfachen?“
ChatGPT liefert:
- Zeile-für-Zeile-Erklärung
- Hinweise zu Performance
- Syntaxoptimierungen
- robustere Varianten
- verbesserte Fehlertoleranzen
- alternative Lösungslogiken
Das macht ChatGPT zu einem Mentor und Code-Reviewer.
ChatGPT kann Muster aus Daten erkennen
Sie geben fünf Beispielzeilen ein und ChatGPT erkennt die Struktur, baut Regular Expressions oder Textfunktionen und entwickelt eine robuste Abfrage. Das ist besonders wertvoll bei:
- Logfile-Analysen
- stark variierenden Textfeldern
- Kundendaten
- Freitextfeldern
- Artikelnummern
- Adressen
Typische Anwendungsfälle für ChatGPT und Power Query
- komplette Abfragen erzeugen
- Transformationen beschreiben und generieren lassen
- M-Code erklären lassen
- Abfragen optimieren (weniger Schritte, performanter)
- Ordnerabfragen (Folder Queries) automatisiert erstellen
- Custom Functions schreiben lassen
- dynamische Parameter integrieren
- komplexe Textlogik generieren
- Fehlerbehandlung einbauen
- Dateipfadbereinigung, dynamische Quellen
- Abfragen generalisieren (nicht nur für eine Datei)
Fazit
ChatGPT ist der ideale Transformationsarchitekt für Power Query. ChatGPT kann Power Query nicht nur unterstützen – es kann Power Query schreiben. Auf der Grundlage von „natürlicher Sprache“ entsteht:
- vollständiger M-Code,
- strukturiert, dokumentiert, robust,
- auch für komplexe ETL-Prozesse geeignet.
Nicht nur Formellogik, sondern vollständige Datenpipelines werden automatisiert.




