Declaración IF que combina múltiples condiciones de diferentes columnas y filas justo arriba

Un usuario Pregunto ✅

Anónimo

Hola a todos,

Tengo dificultades para traducir la siguiente fórmula de Excel a Power Bi:

=SI(Q2=1;SI(M1=»No»;»No»;L2);»NA»)

Por razones razonables, no puedo mostrar una captura de pantalla de los datos. Sin embargo, la columna Q se basa en una declaración IF y el resultado es 1 o 2. La columna M es una columna de texto donde el resultado es «Sí» o «No» y la columna L es igual a un número (Tiempo promedio). Como puede ver en la fórmula, las columnas Q y L buscan información en la fila 2, mientras que la columna M busca información en la fila 1. Mis datos están dispuestos en forma cronológica. Por lo tanto, cada fila está conectada a la fila anterior y esta es la razón por la que necesito una fórmula para involucrar la fila actual con la anterior. En excel es muy fácil combinar múltiples condiciones de diferente formato y ubicadas en diferentes filas. Sin embargo, como entendí en Power Bi, necesitamos trabajar con columnas y fórmulas y no podemos movernos fácilmente como en Excel y simplemente seleccionar las celdas de nuestras fórmulas.

He explorado varios foros y videos y hasta ahora sé que debo crear e indexar una tabla (lo cual hice) para referirme a la fila justo arriba cuando incluyo la condición para la columna M. También necesito incluir funciones como Calcualte, Filter , Anteriormente, SI, SUMA… Sin embargo, no he encontrado la lógica correcta para desarrollar mi fórmula. Espero haber proporcionado suficiente información para obtener ayuda.

Muchas gracias por adelantado.

ryan_mayu

@Anónimo

Tu dirección es correcta. De alguna manera el índice es necesario. Debe usar antes del valor anterior o el siguiente valor.

Column = SUMX(FILTER('Sheet1 (2)','Sheet1 (2)'[index]=EARLIER('Sheet1 (2)'[index])-1),'Sheet1 (2)'[amount])

Todo el DAX debería ser algo como a continuación. Puedes modificarlo tú mismo. Gracias

columna =

VAR M= SUMX(FILTRO(‘Hoja1 (2)’,’Hoja1 (2)'[index]= ANTERIOR (‘Hoja1 (2)'[index])-1), ‘Hoja1 (2)'[amount])

RETORNO si(Q=1,SI(M=»NO»,»No»,L),»NA»)

c1.JPG

ryan_mayu

@Anónimo

Tu dirección es correcta. De alguna manera el índice es necesario. Debe usar antes del valor anterior o el siguiente valor.

Column = SUMX(FILTER('Sheet1 (2)','Sheet1 (2)'[index]=EARLIER('Sheet1 (2)'[index])-1),'Sheet1 (2)'[amount])

Todo el DAX debería ser algo como a continuación. Puedes modificarlo tú mismo. Gracias

columna =

VAR M= SUMX(FILTRO(‘Hoja1 (2)’,’Hoja1 (2)'[index]= ANTERIOR (‘Hoja1 (2)'[index])-1), ‘Hoja1 (2)'[amount])

RETORNO si(Q=1,SI(M=»NO»,»No»,L),»NA»)

c1.JPG

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *