Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
hola tengo 3 medidas
1. es mes máximo = MAX('Calendario'[Fecha].[ Número de mes])
Esta medida me da el número máximo de meses en el año
2. Último valor = calcular([mes máximo],filter( 'Tabla1',Tabla1[Valor] <> en blanco()))
Esta medida me da el número del mes pasado con valor (por ejemplo, si el último valor fue para mayo, me muestra 5, si el último valor fue para marzo, me muestra 3, etc.)
3. Medida = si([Último valor] = 7, (calcular(Tabla1[Valor], filter('Calendario','Calendario'[Fecha].[ Número de mes] = 6))), if([Último valor] = 6, (calculate(Table1[Value], filter('Calendar','Calendar'[Date].[ Número de mes] = 5))), if([Último valor] = 5, (calculate(Table1[Value], filter('Calendar','Calendar'[Date].[ Número de mes] = 4))), if([Último valor] = 4, (calculate(Table1[Value], filter('Calendar','Calendar'[Date].[ Número de mes] = 3))), if([Último valor] = 3, (calculate(Table1[Value], filter('Calendar','Calendar'[Date].[ Número de mes] = 2))),"xd")))))
esa medida nos da valor para el mes anterior al mes pasado con valor (por ejemplo si en mayo tenemos valor 50 y en abril 30, mostrará 30 etc)
es posible optimizar este dax ?
He aquí un ejemplo.
-------- IF form ------------
SizeDesc =
IF ( Product[Size] = "S", "Small",
IF ( Product[Size] = "M", "Medium",
IF ( Product[Size] = "L", "Large",
IF ( Product[Size] = "XL", "Extra Large", "Other" ) ) ) )
-------- SWITCH equivalent ------------
SizeDesc =
SWITCH (
Product[Size],
"S", "Small",
"M", "Medium",
"L", "Large",
"XL", "Extra Large",
"Other"
)
Por favor, pruebe esta medida.
Measure =
SWITCH(
[Last value],
7,CALCULATE(MAX('Table1'[Value]),MONTH('Calendar'[Date]) = 6),
6,CALCULATE(MAX('Table1'[Value]),MONTH('Calendar'[Date]) = 5),
5,CALCULATE(MAX('Table1'[Value]),MONTH('Calendar'[Date]) = 4),
4,CALCULATE(MAX('Table1'[Value]),MONTH('Calendar'[Date])= 3),
3,CALCULATE(MAX('Table1'[Value]),MONTH('Calendar'[Date]) = 2),
"xd"
)
Si esto no funciona para usted, considere proporcionar un archivo de ejemplo sin datos privados.
Cómo proporcionar datos de ejemplo en el foro de Power BI
Saludos
Gao
Equipo de soporte de la comunidad
Si hay alguna publicación que ayude, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente. Si no entiendo bien sus necesidades o todavía tiene problemas, no dude en hacérnoslo saber. ¡Muchas gracias!
Cómo obtener respuestas rápidas a sus preguntas -- Cómo proporcionar datos de muestra
En primer lugar, en lugar de usar múltiples instrucciones IF, la mejor opción es usar SWITCH.
En segundo lugar, para una consulta como esta, probablemente debería estar mirando hacia algunas de las funciones de inteligencia de tiempo incorporadas de power bi.
¿Puede decirme más sobre las funciones de ese interruptor?
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.