Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

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.

Reply
Anonymous
Not applicable

CALCULATE con filtro ALLEXCEPT devuelve un resultado incorrecto

Hola

Utilizo la siguiente fórmula para calcular un total para mi columna Plan_time basada en claves idénticas:

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALLEXCEPT(MyTable, MyTable[KEY_Date_Plant_Descr]))
La suma debe ser 218,56 sin embargo, la fórmula devuelve 221,3
¿Alguna idea de lo que está pasando aquí? ¡Gracias!
KEY_Date_Plant_Descr Tiempo del plan (min)
13-1-2020100Seque en la barra 2,96
13-1-2020100Seque en la barra 1,42
13-1-2020100Seque en la barra 1,24
13-1-2020100Seque en la barra 1,89
13-1-2020100Seque en la barra 0,95
13-1-2020100Seque en la barra 1,47
13-1-2020100Seque en la barra 1,40
13-1-2020100Seque en la barra 0,10
13-1-2020100Seque en la barra 1,19
13-1-2020100Seque en la barra 1,54
13-1-2020100Seque en la barra 1,32
13-1-2020100Seque en la barra 2,89
13-1-2020100Seque en la barra 3,05
13-1-2020100Seque en la barra 2,90
13-1-2020100Seque en la barra 0,17
13-1-2020100Seque en la barra 2,10
13-1-2020100Seque en la barra 3,87
13-1-2020100Seque en la barra 2,29
13-1-2020100Seque en la barra 1,49
13-1-2020100Seque en la barra 5,04
13-1-2020100Seque en la barra 17,95
13-1-2020100Seque en la barra 1,78
13-1-2020100Seque en la barra 0,34
13-1-2020100Seque en la barra 0,34
13-1-2020100Seque en la barra 1,30
13-1-2020100Seque en la barra 0,84
13-1-2020100Seque en la barra 0,68
13-1-2020100Seque en la barra 0,88
13-1-2020100Seque en la barra 1,40
13-1-2020100Seque en la barra 0,78
13-1-2020100Seque en la barra 37,14
13-1-2020100Seque en la barra 1,90
13-1-2020100Seque en la barra 1,50
13-1-2020100Seque en la barra 0,78
13-1-2020100Seque en la barra 1,00
13-1-2020100Seque en la barra 3,60
13-1-2020100Seque en la barra 4,32
13-1-2020100Seque en la barra 24,60
13-1-2020100Seque en la barra 0,44
13-1-2020100Seque en la barra 5,28
13-1-2020100Seque en la barra 24,40
13-1-2020100Seque en la barra 14,72
13-1-2020100Seque en la barra 2,52
13-1-2020100Seque en la barra 1,62
13-1-2020100Seque en la barra 0,56
13-1-2020100Seque en la barra 3,00
13-1-2020100Seque en la barra 0,37
13-1-2020100Seque en la barra 0,37
13-1-2020100Seque en la barra 0,37
13-1-2020100Seque en la barra 0,50
13-1-2020100Seque en la barra 0,70
13-1-2020100Seque en la barra 0,40
13-1-2020100Seque en la barra 0,44
13-1-2020100Seque en la barra 0,40
13-1-2020100Seque en la barra 0,67
13-1-2020100Seque en la barra 0,42
13-1-2020100Seque en la barra 0,42
13-1-2020100Seque en la barra 0,42
13-1-2020100Seque en la barra 0,42
13-1-2020100Seque en la barra 0,42
13-1-2020100Seque en la barra 0,52
13-1-2020100Seque en la barra 0,39
13-1-2020100Seque en la barra 0,39
13-1-2020100Seque en la barra 0,79
13-1-2020100Seque en la barra 1,25
13-1-2020100Seque en la barra 0,90
13-1-2020100Seque en la barra 0,45
13-1-2020100Seque en la barra 0,45
13-1-2020100Seque en la barra 0,45
13-1-2020100Seque en la barra 0,97
13-1-2020100Seque en la barra 0,92
13-1-2020100Seque en la barra 1,07
13-1-2020100Seque en la barra 1,07
13-1-2020100Seque en la barra 1,20
13-1-2020100Seque en la barra 0,94
13-1-2020100Seque en la barra 0,94
13-1-2020100Seque en la barra 0,27
13-1-2020100Seque en la barra 0,25
13-1-2020100Seque en la barra 0,25
13-1-2020100Seque en la barra 1,99
13-1-2020100Seque en la barra 1,79
13-1-2020100Seque en la barra 2,04
1 ACCEPTED SOLUTION

Hola @VNoteboom

Construyo una mesa como la suya para tener una prueba, pero aquí su columna calculada funciona bien.

1.png

Creo que puede probar esta columna de cálculo:

C2_Plan_Sum = CALCULATE(SUM('Table'[Time (minutes)]), FILTER('Table','Table'[KEY]=EARLIER('Table'[KEY])))

Si todavía no funciona, por favor muéstrame tu captura de pantalla de problemas, o puedes proporcionarme tu archivo pbix por tu Onedrive for Business.

Saludos

Rico Zhou

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.


View solution in original post

7 REPLIES 7
Ashish_Mathur
Super User
Super User

Hola

Estoy confundido. ¿Por qué no simplemente arrastrar la columna "KEY_Date_Plant_Descr" a su tabla visual y utilizar esta medida

•SUM(Datos[Tiempo de planificación (min)])

Espero que esto ayude.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
amitchandak
Super User
Super User

@VNoteboom ,ALLEXCEPT significa que eliminará todo el filtro y mantendrá ese filtro, así que es que lo que necesita o necesita todo

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALLEXCEPT(MyTable, MyTable[KEY_Date_Plant_Descr]))

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALL( MyTable[KEY_Date_Plant_Descr]))

O

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALLselected( MyTable[KEY_Date_Plant_Descr]))

Anonymous
Not applicable

Hola Amitchandak,

Gracias por su respuesta.

Sin embargo, ninguna de las fórmulas sugeridas devuelve el valor que quiero (218,56).

Fórmula:

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALLEXCEPT(MyTable, MyTable[KEY_Date_Plant_Descr]))

se acerca más a lo que quiero, pero por alguna razón está fuera por un poco.

En otras palabras, quiero una columna que devuelva el valor sumado de la columna "tiempo de planificación (min)" para todos los valores idénticos en la columna "KEY_Date_Plant_Descr".

¡Gracias de nuevo!

@VNoteboom , es MyTable[Tiempo de planificación (min)] es una medida o columna

si el tiempo del plan (min) es una columna

Por lo tanto, si desea una columna , Esto debe trabajar -SUM(MyTable[Tiempo de planificación (min)])

si usted wany medida entonces estos deben trabajar

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALL( MyTable))

Plan_Sum: CALCULATE(SUM(MyTable[Plan time (min)]), ALLselected( MyTable))

Si es una medida

entonces en estos deben funcionar

sumx(values(MyTable[KEY_Date_Plant_Descr]),[Tiempo de planificación (min)])

CALCULATE(sumx(values(MyTable[KEY_Date_Plant_Descr]),[Plan time (min)]), ALL( MyTable[KEY_Date_Plant_Descr]))

CALCULATE(sumx(values(MyTable[KEY_Date_Plant_Descr]),[Plan time (min)]), ALLselected( MyTable[KEY_Date_Plant_Descr]))

Anonymous
Not applicable

Hola

Básicamente es así:

El tiempo SUM de columna debe dar el valor sumado de Time(minutes) para cada clave. Así que ahora uso la fórmula anterior para calcular este tiempo SUM, pero por alguna razón da un resultado que es ligeramente incorrecto.

MyTable[Tiempo de planificación (min)] es una columna y la fórmula CALCULATE también está en una columna.

ClaveTiempo (minutos)Tiempo SUM
12327
12357
234814
234614

Hola @VNoteboom

Construyo una mesa como la suya para tener una prueba, pero aquí su columna calculada funciona bien.

1.png

Creo que puede probar esta columna de cálculo:

C2_Plan_Sum = CALCULATE(SUM('Table'[Time (minutes)]), FILTER('Table','Table'[KEY]=EARLIER('Table'[KEY])))

Si todavía no funciona, por favor muéstrame tu captura de pantalla de problemas, o puedes proporcionarme tu archivo pbix por tu Onedrive for Business.

Saludos

Rico Zhou

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.


Anonymous
Not applicable

Hola Rico,

Tienes razón. Intenté asegurarme de que mis filtros fueran iguales entre los conjuntos de datos, pero resultó que pasé por alto algo que provocó la diferencia.

Gracias por la ayuda a todos!

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.