La solicitud

De Rachel Kim, Gerente de Categoría
Tu objetivo
La matriz tiene products[category] en las filas y una segmentación 'Date'[Year] en 2025. Crea una medida llamada Sales YoY %: (Sales − Sales del año pasado) ÷ Sales del año pasado. Guarda Sales del año pasado (CALCULATE con SAMEPERIODLASTYEAR) en una variable y divide con DIVIDE.
- Llena
[Sales YoY %]en cada fila del visualpendiente - También la fila Total correctapendiente
Tu medida
- Visual
- A matrix: rows = products[category]; values = [Sales], [Sales YoY %]
- Segmentaciones
- 'Date'[Year] = 2025
- Medidas del informe
Sales = CALCULATE(SUM(order_items[line_total]), orders[status] = "completed")
Panel de datos: tablas y columnas
- order_items order_item_id, order_id, product_id, quantity, unit_price, discount_pct, line_total
- orders order_id, customer_id, order_date, status, channel, shipping_fee, coupon_code
- products product_id, name, category, subcategory, unit_price, unit_cost, launched_on, is_active
- customers customer_id, first_name, last_name, email, city, state, signup_date, segment, referral_source
- returns return_id, order_item_id, returned_on, reason, refund_amount
- Date Date, Year, Quarter, Month Number, Month, Year Month, Year Quarter, Day, Weekday Number, Weekday
Cargando el editor…
Solución de referencia
| category | Sales | Sales YoY % |
|---|---|---|
| Decor | $290,301 | |
| Furniture | $573,131 | |
| Kitchen | $292,808 | |
| Lighting | $385,145 | |
| Outdoor | $507,358 | |
| Textiles | $251,426 | |
| Total | $2,300,170 |
Mote revisa tu resultado
Presiona Comprobar. Mote completa tu respuesta y la compara con lo que necesita el informe.
Lo que recibe Rachel, y por qué
La lección
Una tasa de crecimiento responde «cuánto cambió, en relación con donde empezó». Año contra año (YoY), es:
growth = (this year − last year) ÷ last year
En DAX, la cifra del año pasado es un CALCULATE con SAMEPERIODLASTYEAR, como en el nivel anterior. Este nivel añade dos hábitos que hacen legibles y seguras las medidas como esta: las variables y DIVIDE.
En qué estás trabajando
Esta página ejecuta un motor DAX de práctica creado para este sitio. Evalúa tu medida para cada categoría en 2025 y para la fila Total, y comprueba cada celda. En Power BI Desktop: Home → New measure, escribe la fórmula (Shift+Enter para líneas nuevas) y configura Measure tools → Format → Percentage.
VAR … RETURN
Sales YoY % =
VAR SalesLY = CALCULATE([Sales], SAMEPERIODLASTYEAR('Date'[Date]))
RETURN
DIVIDE([Sales] - SalesLY, SalesLY)
VAR name = expressioncalcula un valor una vez y le da un nombre. Las variables se evalúan en el contexto de filtro donde están definidas: aquí el propio contexto de la celda, así queSalesLYson las ventas del año pasado de esta categoría.RETURNda el resultado de la medida, usando las variables.
Sin una variable escribirías el CALCULATE dos veces, una en el numerador y otra en el
denominador. Eso es más difícil de leer, más fácil de desajustar al editar una copia y (en modelos
grandes) más lento. Las variables también facilitan la depuración: escribe temporalmente
RETURN SalesLY para ver el valor intermedio en la matriz.
DIVIDE en lugar de /
DIVIDE(numerator, denominator) devuelve un vacío cuando el denominador es cero o está vacío. Una
categoría lanzada este año no tiene ventas el año pasado; / produciría un error o infinito en
esa celda, DIVIDE la deja vacía. Un tercer argumento opcional fija qué devolver en su lugar,
DIVIDE(a, b, 0).
Leer el resultado
| Categoría | 2025 vs 2024 |
|---|---|
| Textiles | +29.3 % |
| Outdoor | +25.5 % |
| Lighting | +18.3 % |
| Furniture | +12.7 % |
| Decor | +4.1 % |
| Kitchen | +4.0 % |
En toda la tienda, las ventas de 2025 fueron un 15.4 % superiores a las de 2024. Las tasas de crecimiento hacen comparables categorías de tamaños muy distintos: Furniture añadió más dólares, pero Textiles creció más rápido.
Errores comunes
- La razón en lugar del crecimiento.
DIVIDE([Sales], SalesLY)da 1.183 para Lighting. El crecimiento es eso menos 1. - Las variables no cambian el contexto.
VAR s = [Sales] RETURN CALCULATE(s, …)no vuelve a evaluarsbajo los nuevos filtros: una variable es un valor fijo una vez calculada. Pon el CALCULATE dentro de la VAR, como aquí. - Puntos porcentuales vs porcentaje. Pasar de un margen del 10 % al 12 % es +2 puntos porcentuales, pero un crecimiento del +20 %. Di a cuál te refieres.
¡Linterna encendida!
Practicaste: yoyvardividesameperiodlastyeargrowth rate
- Resuelto
- Sin pistas
- Al primer intento
