1. Faro

Nivel 3 · Una columna de total, una de mes y luego un solo mes

La solicitud

De Rachel Ramirez, Planificadora de mercancía

“Me estoy preparando para la llamada con el proveedor de sofás. El sistema de pedidos me dio sales_q2_2025_sofas.xlsx, el trimestre completo, pero quiero hablar solo de abril: cada línea con su total y el mes, para mostrar de dónde salen los números.”

Tu objetivo

Asegúrate de que order_date sea una fecha, añade una columna line_total = quantity × unit_price, añade una columna month con el número de mes de order_date (4 para abril) y luego conserva solo las filas de abril.

  • Muestra exactamente order_id order_date product quantity unit_price line_total monthpendiente
  • 12 filaspendiente

Tu hoja

Excel
La hoja de este nivel
order_idorder_dateproductquantityunit_price
190932025-04-02Northfield Rattan Sectional1229
291252025-04-05Northfield Rattan Sectional1194.65
391982025-04-11Northfield Rattan Sectional2229
492572025-04-16Northfield Rattan Sectional1229
592622025-04-17Tidewater Teak Loveseat2629
692732025-04-18Northfield Rattan Sectional1229
792842025-04-19Tidewater Teak Loveseat1534.65
893162025-04-21Northfield Rattan Sectional2194.65
993382025-04-24Northfield Rattan Sectional9229
1093582025-04-26Northfield Rattan Sectional1229
1193672025-04-27Northfield Rattan Sectional1229
1293692025-04-27Tidewater Teak Loveseat1629
1394172025-05-02Northfield Rattan Sectional1229
1494302025-05-03Northfield Rattan Sectional2229
1594722025-05-08Northfield Rattan Sectional2229
1694902025-05-09Northfield Rattan Sectional1229
1795102025-05-11Northfield Rattan Sectional1229
1895142025-05-11Vale Velvet Loveseat11659
1995532025-05-15Northfield Rattan Sectional1229
2095592025-05-15Tidewater Teak Loveseat1629
2196312025-05-21Northfield Rattan Sectional2229
2296322025-05-21Tidewater Teak Loveseat2629
2396662025-05-25Northfield Rattan Sectional4229
2497352025-05-31Tidewater Teak Loveseat1629
2598222025-06-07Northfield Rattan Sectional4229
2698242025-06-07Northfield Rattan Sectional1229
2798302025-06-08Northfield Rattan Sectional2229
2899022025-06-15Northfield Rattan Sectional2229
2999042025-06-15Northfield Rattan Sectional2229
3099492025-06-19Northfield Rattan Sectional1229
3199512025-06-19Northfield Rattan Sectional4229
3299792025-06-21Northfield Rattan Sectional1229
33100002025-06-23Northfield Rattan Sectional1229
34100022025-06-24Northfield Rattan Sectional1229
35100262025-06-26Northfield Rattan Sectional2194.65
36100352025-06-26Tidewater Teak Loveseat1629
37100862025-06-29Vale Velvet Loveseat31659
38100872025-06-29Northfield Rattan Sectional2194.65
39100922025-06-30Northfield Rattan Sectional3229

Cargando el editor…

    ResultadoPresiona Comprobar para comparar el resultado de la consulta

    Mote revisa tu resultado

    Presiona Comprobar. Cada fila del resultado que coincide se vuelve una luciérnaga en tu linterna.

    La lección

    La mayoría de las columnas que quiere un analista no vienen en la exportación: un total de línea, el mes, una banda de tamaño. En una hoja de cálculo escribirías una fórmula y la rellenarías hacia abajo. En Power Query añades una columna personalizada: una fórmula, escrita una vez, aplicada a cada fila y repetida en cada actualización.

    Una columna personalizada, fila por fila

    Add column: line_total = [quantity] * [unit_price]

    Dentro de la fórmula, [quantity] significa “la cantidad de esta fila”. No hay direcciones de celda ni relleno hacia abajo: Power Query evalúa la fórmula en cada fila. En el pedido 9338, nueve Northfield Rattan Sectionals a 229.00 dan 2,061.00. Aquí unit_price es el precio pagado por unidad tras cualquier cupón, por eso algunas filas muestran 194.65 en lugar de 229.

    En Excel: Agregar columna → Columna personalizada, escribe el nombre, haz doble clic en las columnas de la lista para insertarlas, clic en Aceptar. El lenguaje de fórmulas es M, que se parece un poco a Excel pero no es lo mismo:

    Quieres Celda de Excel Columna personalizada en M
    una columna de esta fila C2 [quantity]
    multiplicar =C2*D2 [quantity] * [unit_price]
    unir texto =A2&" "&B2 [a] & " " & [b] (solo texto)
    una condición =IF(D2>=500,"big","small") if [unit_price] >= 500 then "big" else "small"
    el mes =MONTH(B2) Date.Month([order_date])

    M distingue mayúsculas de minúsculas: Date.Month funciona, date.month no, y [Quantity] no es [quantity].

    El mes a partir de una fecha

    Change type: order_date to date
    Add column: month = Date.Month([order_date])

    Date.Month devuelve un entero de 1 a 12. En Power Query real solo funciona en una columna cuyo tipo es Fecha: con texto devuelve un error. Por eso el primer paso fija el tipo, aunque 2025-04-02 ya parezca una fecha. Con el tipo fijado, se abre la ruta de clics: selecciona order_date, Agregar columna → Fecha → Mes → Mes. El mismo menú tiene Año, Nombre del mes (Date.MonthName, que da April), Día de la semana e Inicio del mes.

    Filtrar a un mes

    Filter rows: month = 4

    El origen tiene 39 líneas de abril a junio de 2025. El filtro conserva las 12 de abril: 23 unidades y 6,669.60 de ingresos. Una comprobación de cordura antes de enviarlo: las fechas del resultado deberían empezar todas con 2025-04, y el número de filas debería coincidir con lo que ves al filtrar el origen a ojo.

    Podrías filtrar por la fecha misma (Filtros de fecha → En el anterior → Mes, o order_date entre el 1 y el 30 de abril). Construir primero la columna de mes tiene un extra: la misma columna agrupa las filas por mes en una tabla dinámica más adelante.

    El M detrás de los pasos

    #"Changed Type" = Table.TransformColumnTypes(Source, {{"order_date", type date}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "line_total", each [quantity] * [unit_price]),
    #"Inserted Month" = Table.AddColumn(#"Added Custom", "month", each Date.Month([order_date]), Int64.Type),
    #"Filtered Rows" = Table.SelectRows(#"Inserted Month", each [month] = 4)

    each es la forma que tiene M de decir “para cada fila”.

    Errores comunes

    • Filtrar por un nombre que la columna no contiene. month = April no devuelve filas; la columna contiene 4. Usa Date.MonthName si quieres la palabra.
    • Date.Month sobre una columna de texto. Power Query real devuelve un error en cada fila. Fija antes el tipo a Fecha.
    • Filtrar antes de construir la columna. Filter rows: month = 4 como primer paso falla: aún no existe la columna month. Los pasos se ejecutan de arriba abajo.
    • Escribir el nombre de la columna sin corchetes. quantity * unit_price no es M; las columnas van en [ ].

    Elige qué puede ejecutarse en este sitio. Puedes cambiarlo cuando quieras desde "Configurar cookies", al pie de cada página.