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

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

Mezclando algo como COUNTIFS con el valor mínimo para cada caso.

Hola

Estoy tratando de encontrar la manera de hacer en Power BI lo que haría en Excel usando COUNTIFS (para la primera parte del mensaje)
Después de esto, un condicional con el valor mínimo (para la segunda parte).

El propósito es saber qué máquinas se están reparando y si no, cuándo es el próximo mantenimiento (dependiendo de la clasificación).

Para eso, lo primero que considero (puedo estar equivocado) es obtener una fórmula DAX (similar a Excel COUNTIFS) para obtener si una máquina está siendo reparada o no.

En excel sería algo así;

Screenshot_3.jpg

Podemos ver en la 'columna I' para cada registro la cantidad de tareas que se realizan para cada máquina.

Una vez que tenemos esto, quiero obtener otra columna (la buena) (en el ejemplo 'K'), donde todas las máquinas en proceso están en 'Sí' y aquellas máquinas que lo hicieron ('C' en el ejemplo), solo se muestra la siguiente (la que tiene el valor mínimo en la columna 'H') también.

Explicando esto de la manera opuesta, no quiero ver ninguna de las máquinas en estado 'Pendiente' a menos que ese registro tenga el valor mínimo en la columna 'H' y esa máquina no tenga ninguna actividad en proceso.

Finalmente, ¡gracias por su ayuda agradecida! Esto podría ser fácil si tienes la pista, pero para mí, se está volviendo demasiado complicado.
¡Saludos!



6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Gracias @Greg_Deckler . Ya te di un like en tu otro post. Muy interesante la comparación.

Sin embargo, todavía tengo dudas sobre la forma en que usas de filterexpression. Supongo que en filterexpression es donde se filtran otras máquinas (en el ejemplo) dependiendo de la fila?

¡Gracias de antemano! Ya probé con FILTER pero no encontré la manera de usar correctamente la filterexpression.

@jmateu88 ¿Puede publicar sus datos de muestra como texto y puedo crear una solución específica para ello? De lo contrario, es probable que me pierda un paréntesis o no tenga en cuenta un caso de borde en particular. Pero, podría ser:

Column =
  VAR __Machine = [MachineID]
  VAR __Seq = MINX(FILTER('Table',[MachineID] = __Machine),[Sequential Number])
RETURN
  IF([Status] = "In process" || [Sequential Number] = __Seq,"Yes","No")

Hola @Greg_Deckler ,

Aquí los datos;

MáquinaEstadoSeq.no
AEn proceso1
BEn proceso1
CPendiente1
AEn proceso2
BPendiente2
BPendiente3
CPendiente2
APendiente3
BPendiente4
CPendiente3
APendiente4
BPendiente5
APendiente5

Aquí probando en Power BI.
Screenshot_1.jpg

¡¡Gracias!!

@jmateu88 PBIX se adjunta debajo de la firma. Esta es la columna que creé:

Column = 
  VAR __Machine = [Machine]
  VAR __Seq = MINX(FILTER('Table',[Machine] = __Machine),[Seq.no])
RETURN
  IF([Status] = "In process" || [Seq.no] = __Seq,1,0)

wow @Greg_Deckler . Eso fue increíble.

Aprendí mucho con esta expresión simple e increíble. ¡Muchas gracias!

¡La solución es más que válida!

Syndicate_Admin
Administrator
Administrator

@jmateu88 COUNTIF equivalente es COUNTX(FILTER(...),...) Traducción de CO-CU Excel a DAX - Microsoft Power BI Community

Helpful resources

Announcements
June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

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

Top Solution Authors