M-formelspråket

Mellannivå i Power Query i Excel

Lyndsay Girard

Performance Analytics Consultant

Avancerat redigeringsprogram

  • Skrivet i M-formelspråket (M-kod)
    • Skiftlägeskänsligt
  • Let-uttryck har två delar:
    • "let"- och "in"-sats
    • Kommaseparerad lista med variabelnamn eller stegidentifierare.
      • Varje steg bygger på föregående steg genom att referera till dess namn
    • Steget efter "in"-satsen är det synliga frågeresultatet
let
    Source = ""
in
    Source
Mellannivå i Power Query i Excel

Avancerat redigeringsprogram

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

Let-uttryck med 1 steg

Mellannivå i Power Query i Excel

Avancerat redigeringsprogram

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-uttryck med två steg

Mellannivå i Power Query i Excel

Avancerat redigeringsprogram

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-uttryck med tre steg

Mellannivå i Power Query i Excel

Värdetyper

Primitiva

  • Enkelt värde (t.ex. tal, logisk, text eller null)
    [ID = 1, Name = "A"]
    

Strukturerade

  • Lista
  • Post
  • Tabell
  • Funktion
Mellannivå i Power Query i Excel

Strukturerade värdetyper

Lista:

  • Nollindexerad ordnad sekvens av värden med en kolumn
    List = {1,2,3}
    

Post:

  • En struktur med en enda rad men flera kolumner
    Record = [Column1=1,Column2=2]
    

Tabell:

  • Kombination av flera rader och flera kolumner
    Table = #table({"Column A","Column B"},
          {{1,10},{2,20}})
    
Mellannivå i Power Query i Excel

Inbyggda M-funktioner

Funktion:

  • Ett värde som, när det anropas med argument, producerar ett nytt värde.
  • Tabellfunktioner
  • Listfunktioner
  • Talfunktioner
  • Postfunktioner
  • Datumfunktioner
  • Tidsfunktioner
  • Varaktighetsfunktioner
  • ... och många fler!
1 https://learn.microsoft.com/en-us/powerquery-m/power-query-m-function-reference
Mellannivå i Power Query i Excel

Anpassade funktioner

  • Komplexa beräkningar
  • Återanvändbarhet
  • Parametrisering
  • Prestandaoptimering

 

  Syntax för anpassad funktion:

= (Variable as Data Type, Variable as Data Type) => (Output Expression)
Mellannivå i Power Query i Excel

Anpassade funktioner

Enkelt exempel på anpassad funktion:

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

     

Ch3_simple_custom_function.png

Mellannivå i Power Query i Excel

Frågeparametrar

  • Platshållare för att dynamiskt skicka värden till en fråga
    • Gör frågor mer flexibla och återanvändbara
      • Dynamiska filter
      • Anpassade funktioner

Hand som justerar skjutreglage och ändrar programinställningar på skärmen. Anpassning av användargränssnitt med växlingsknapp

Mellannivå i Power Query i Excel

Nu kör vi en övning!

Mellannivå i Power Query i Excel

Preparing Video For Download...