Lenguaje de fórmulas M

Power Query intermedio en Excel

Lyndsay Girard

Performance Analytics Consultant

Editor avanzado

  • Escrito en el lenguaje de fórmulas M (código M)
    • Distingue mayúsculas y minúsculas
  • Las expresiones let tienen dos partes:
    • Cláusulas "let" y "in"
    • Lista separada por comas de variables o identificadores de pasos
      • Cada paso se basa en el anterior refiriéndose a su nombre
    • El paso tras la cláusula "in" es la salida visible de la consulta
let
    Source = ""
in
    Source
Power Query intermedio en Excel

Editor avanzado

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

Expresión let con 1 paso

Power Query intermedio en Excel

Editor avanzado

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"

Expresión let con dos pasos

Power Query intermedio en Excel

Editor avanzado

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"

Expresión let con tres pasos

Power Query intermedio en Excel

Tipos de valor

Primitivo

  • Valor simple (p. ej., número, lógico, texto o null)
    [ID = 1, Name = "A"]
    

Estructurado

  • Lista
  • Registro
  • Tabla
  • Función
Power Query intermedio en Excel

Tipos de valor estructurado

Lista:

  • Secuencia ordenada desde 0 de valores con una columna
    List = {1,2,3}
    

Registro:

  • Estructura con una sola fila y varias columnas
    Record = [Column1=1,Column2=2]
    

Tabla:

  • Varias filas y varias columnas
    Table = #table({"Column A","Column B"},
          {{1,10},{2,20}})
    
Power Query intermedio en Excel

Funciones integradas de M

Función:

  • Valor que, al invocarse con argumentos, produce un nuevo valor.
  • Funciones de tabla
  • Funciones de lista
  • Funciones numéricas
  • Funciones de registro
  • Funciones de fecha
  • Funciones de hora
  • Funciones de duración
  • ... ¡muchas más!
1 https://learn.microsoft.com/en-us/powerquery-m/power-query-m-function-reference
Power Query intermedio en Excel

Funciones personalizadas

  • Cálculos complejos
  • Reutilización
  • Parametrización
  • Optimización del rendimiento

 

  Sintaxis de función personalizada:

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

Funciones personalizadas

Ejemplo simple de función personalizada:

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

     

Ch3_simple_custom_function.png

Power Query intermedio en Excel

Parámetros de consulta

  • Marcadores para pasar valores dinámicamente a una consulta
    • Hacen las consultas más flexibles y reutilizables
      • Filtros dinámicos
      • Funciones personalizadas

Mano ajustando controles deslizantes, cambiando la configuración de una aplicación en pantalla. Personalización de la interfaz con un interruptor

Power Query intermedio en Excel

¡Vamos a practicar!

Power Query intermedio en Excel

Preparing Video For Download...