Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola a todos
Tengo una tabla con 2 columnas con números y algunos valores NULL. Me gustaría crear una medida en DAX que me da los diferencias (columna 2019-Columna 2018) si ambas columnas tienen números. Y si la columna 2019 tiene un null quiero devolver "No hay ningún valor para 2019" y el mismo para la columna 2018. Vea a continuación un breve ejemplo del conjunto de datos
2018 | 2019 | Columna deseada |
Null | 100 | no tiene valor para 2018 |
200 | 100 | -100 |
50 | 50 | 0 |
100 | Null | no tiene valor para 2019 |
¿Esto se puede eliminar con una medida en DAX o necesitaría crear realmente las columnas en DAX/M?
Solved! Go to Solution.
HI @BobKoenen,
La fórmula de lkalawski parece bien, pero la columna calculada actual y la medida no son capaces de devolver directamente varios tipos de datos. Creo que necesita agregar algunas operaciones adicionales en la fórmula para convertirlas en texto para evitar el problema del tipo de datos. (Utilicé la instrucción if para comprobar los valores de campo)
Column Version =
IF (
[2018] = BLANK (),
"2018 missed",
IF ( [2019] = BLANK (), "2019 missed", [2019] - [2018] )
) & ""
Measure version =
CONCATENATEX (
SUMMARIZE (
'Table',
[2018],
[2019],
"Result",
IF (
[2018] = BLANK (),
"2018 missed",
IF ( [2019] = BLANK (), "2019 missed", [2019] - [2018] )
) & ""
),
[Result],
","
)
saludos
Xiaoxin Sheng
HI @BobKoenen,
La fórmula de lkalawski parece bien, pero la columna calculada actual y la medida no son capaces de devolver directamente varios tipos de datos. Creo que necesita agregar algunas operaciones adicionales en la fórmula para convertirlas en texto para evitar el problema del tipo de datos. (Utilicé la instrucción if para comprobar los valores de campo)
Column Version =
IF (
[2018] = BLANK (),
"2018 missed",
IF ( [2019] = BLANK (), "2019 missed", [2019] - [2018] )
) & ""
Measure version =
CONCATENATEX (
SUMMARIZE (
'Table',
[2018],
[2019],
"Result",
IF (
[2018] = BLANK (),
"2018 missed",
IF ( [2019] = BLANK (), "2019 missed", [2019] - [2018] )
) & ""
),
[Result],
","
)
saludos
Xiaoxin Sheng
Hola @BobKoenen
Puede crear medida:
Desired column M =
VAR _2018 = SELECTEDVALUE('Table (2)'[2018])
VAR _2019 = SELECTEDVALUE('Table (2)'[2019])
RETURN
SWITCH(TRUE(),
ISBLANK(_2018), "has no value for 2018",
ISBLANK(_2019), "has no value for 2019",
_2018 - _2019
)
O bien, también puede crear una columna calculada:
Desired column CC =
SWITCH(TRUE(),
ISBLANK('Table (2)'[2018]), "has no value for 2018",
ISBLANK('Table (2)'[2019]), "has no value for 2019",
CONVERT('Table (2)'[2018] - 'Table (2)'[2019], STRING)
)
Por favor, consulte este artículo para elegir el adecuado:
https://www.sqlbi.com/articles/calculated-columns-and-measures-in-dax/
_______________
Si ayudé, por favor acepte la solución y dar felicitaciones! 😀
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |