M-Formelsprache

Power Query in Excel – Fortgeschrittene Techniken

Lyndsay Girard

Performance Analytics Consultant

Erweiterter Editor

  • Geschrieben in der M-Formelsprache (M-Code)
    • Groß-/Kleinschreibung beachten
  • Let-Ausdrücke haben zwei Teile:
    • "let"- und "in"-Abschnitt
    • Kommagetrennte Liste von Variablennamen oder Schrittbezeichnern
      • Jeder Schritt baut auf dem vorherigen auf, indem er seinen Namen referenziert
    • Der nach dem "in"-Abschnitt stehende Schritt ist die sichtbare Ausgabe
let
    Source = ""
in
    Source
Power Query in Excel – Fortgeschrittene Techniken

Erweiterter Editor

let
    MyTable = Table.FromRecords({
    [ID = 1, Name = "A", Result = 10],
    [ID = 2, Name = "B", Result = 5]})
in
    MyTable

Let-Ausdruck mit 1 Schritt

Power Query in Excel – Fortgeschrittene Techniken

Erweiterter Editor

let
    MyTable = Table.FromRecords({
    [ID = 1, Name = "A", Result = 10],
    [ID = 2, Name = "B", Result = 5]}),
    #"Sorted Rows" = Table.Sort(MyTable,{{"Result", Order.Ascending}})
in
    #"Sorted Rows"

Let-Ausdruck mit zwei Schritten

Power Query in Excel – Fortgeschrittene Techniken

Erweiterter Editor

let
    MyTable = Table.FromRecords({
    [ID = 1, Name = "A", Result = 10],
    [ID = 2, Name = "B", Result = 5]}),
    #"Sort" = Table.Sort(MyTable,{{"Result", Order.Ascending}}),
    #"Lower" = Table.TransformColumns(#"Sort",{{"Name", Text.Lower, type text}})
in
    #"Lower"

Let-Ausdruck mit drei Schritten

Power Query in Excel – Fortgeschrittene Techniken

Werttypen

Primitiv

  • Einteiliger Wert (z. B. Zahl, Logik, Text oder null)
    [ID = 1, Name = "A"]
    

Strukturiert

  • Liste
  • Datensatz
  • Tabelle
  • Funktion
Power Query in Excel – Fortgeschrittene Techniken

Strukturierte Werttypen

Liste:

  • Nullbasierte, geordnete Folge mit einer Spalte
    List = {1,2,3}
    

Datensatz:

  • Struktur mit einer Zeile und mehreren Spalten
    Record = [Column1=1,Column2=2]
    

Tabelle:

  • Kombination aus mehreren Zeilen und Spalten
    Table = #table({"Column A","Column B"},
          {{1,10},{2,20}})
    
Power Query in Excel – Fortgeschrittene Techniken

M-Standardfunktionen

Funktion:

  • Wert, der bei Aufruf mit Argumenten einen neuen Wert erzeugt
  • Tabellfunktionen
  • Listenfunktionen
  • Zahlenfunktionen
  • Datensatzfunktionen
  • Datumsfunktionen
  • Zeitfunktionen
  • Dauerfunktionen
  • ... viele weitere!
1 https://learn.microsoft.com/en-us/powerquery-m/power-query-m-function-reference
Power Query in Excel – Fortgeschrittene Techniken

Benutzerdefinierte Funktionen

  • Komplexe Berechnungen
  • Wiederverwendbarkeit
  • Parametrisierung
  • Performance-Optimierung

 

  Syntax für benutzerdefinierte Funktionen:

= (Variable as Data Type, Variable as Data Type) => (Output Expression)
Power Query in Excel – Fortgeschrittene Techniken

Benutzerdefinierte Funktionen

Einfaches Beispiel für eine benutzerdefinierte Funktion:

let
    MyFunction = (x) => x + 1
in
    MyFunction(10)

     

Ch3_simple_custom_function.png

Power Query in Excel – Fortgeschrittene Techniken

Abfrageparameter

  • Platzhalter, um Werte dynamisch an eine Abfrage zu übergeben
    • Macht Abfragen flexibler und wiederverwendbar
      • Dynamische Filter
      • Benutzerdefinierte Funktionen

Hand, die Schieberegler anpasst und App-Einstellungen ändert. Benutzeroberfläche mit Kippschalter anpassen

Power Query in Excel – Fortgeschrittene Techniken

Lass uns üben!

Power Query in Excel – Fortgeschrittene Techniken

Preparing Video For Download...