Linguaggio di formule M

Power Query intermedio in Excel

Lyndsay Girard

Performance Analytics Consultant

Editor avanzato

  • Scritto nel linguaggio di formule M (codice M)
    • Distingue maiuscole/minuscole
  • Le espressioni let hanno due parti:
    • Clausole "let" e "in"
    • Elenco di variabili o identificatori di passaggi, separati da virgole
      • Ogni passaggio si basa sul precedente richiamandone il nome
    • Il passaggio dopo la clausola "in" è l'output visibile della query
let
    Source = ""
in
    Source
Power Query intermedio in Excel

Editor avanzato

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

Espressione let con 1 passaggio

Power Query intermedio in Excel

Editor avanzato

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"

Espressione let con due passaggi

Power Query intermedio in Excel

Editor avanzato

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"

Espressione let con tre passaggi

Power Query intermedio in Excel

Tipi di valore

Primitivo

  • Valore singolo (es. numero, logico, testo o null)
    [ID = 1, Name = "A"]
    

Strutturato

  • Lista
  • Record
  • Tabella
  • Funzione
Power Query intermedio in Excel

Tipi di valore strutturati

Lista:

  • Sequenza ordinata a indice zero di valori in una colonna
    List = {1,2,3}
    

Record:

  • Struttura con una riga e più colonne
    Record = [Column1=1,Column2=2]
    

Tabella:

  • Insieme di più righe e più colonne
    Table = #table({"Column A","Column B"},
          {{1,10},{2,20}})
    
Power Query intermedio in Excel

Funzioni integrate di M

Funzione:

  • Valore che, chiamato con argomenti, produce un nuovo valore.
  • Funzioni per tabelle
  • Funzioni per liste
  • Funzioni per numeri
  • Funzioni per record
  • Funzioni per date
  • Funzioni per ore
  • Funzioni per durate
  • ... e molte altre!
1 https://learn.microsoft.com/en-us/powerquery-m/power-query-m-function-reference
Power Query intermedio in Excel

Funzioni personalizzate

  • Calcoli complessi
  • Riutilizzo
  • Parametrizzazione
  • Ottimizzazione delle prestazioni

 

  Sintassi funzione personalizzata:

= (Variable as Data Type, Variable as Data Type) => (Output Expression)
Power Query intermedio in Excel

Funzioni personalizzate

Esempio semplice di funzione personalizzata:

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

     

Ch3_simple_custom_function.png

Power Query intermedio in Excel

Parametri di query

  • Segnaposto per passare valori a una query in modo dinamico
    • Rendono le query più flessibili e riutilizzabili
      • Filtri dinamici
      • Funzioni personalizzate

Mano che regola i cursori, modificando le impostazioni dell'app. Personalizzazione dell'interfaccia con interruttori

Power Query intermedio in Excel

Passiamo alla pratica!

Power Query intermedio in Excel

Preparing Video For Download...