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

¿Cómo mostrar un total de fila como elemento de fila en una matriz?

Hola amigos,

Tengo una consulta simple, pero me cuesta hacer lo mismo en PowerBI.

ashishd_0-1718285859060.png

Quiero mostrar el total de filas en la dimensión Filas después de elementos. De forma predeterminada, podemos tener la tabla de la izquierda, pero tengo que mostrar los números sin procesar del total de filas y los números individuales como porcentaje del total, similar a la de la derecha.

He creado una medida Total DAX para obtener el total de filas, pero al ser una medida, no se puede arrastrar a las filas de una matriz.
Cualquier consejo para lograr esto sería útil.

Ejemplo de archivo pbix está aquí: https://drive.google.com/file/d/1pn51DF2Egyx_EyFNZ3ICF9_jqiNVNw_6/view?usp=sharing

Gracias
Ceniza



5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Hola@ashishd
Estaré encantado de ayudarte.
De acuerdo con la descripción, desea que las columnas de fecha y total muestren valores diferentes por separado, con la columna de fecha que muestre el porcentaje y la columna de agregación total que muestre la cantidad total
Debe personalizar la salida en la matriz utilizando la función isinope, que se usa comúnmente en matrices.
Aquí están los resultados de mi prueba, espero que te ayude

vjtianmsft_0-1718329619043.png

Este es el código DAX.

C_% = 
VAR name_Item=[Item]
VAR num_Item=
CALCULATE(SUM(Sheet1[Metric]),FILTER(ALL('Sheet1'),'Sheet1'[Item]=name_Item)
)
RETURN DIVIDE(Sheet1[Metric],num_Item,0)
M_Item_Num = CALCULATE(
    SUM('Sheet1'[Metric]),FILTER(ALL(Sheet1),Sheet1[Item]=MAX('Sheet1'[Item]))
    )
M_total = 
IF(ISINSCOPE(Sheet1[Date]),
FORMAT(SELECTEDVALUE(Sheet1[C_%]),"Percent"),[M_Item_Num])

vjtianmsft_1-1718329686361.png

Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, por favor aclare en una respuesta de seguimiento.

Saludos

Carson Jian,

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

Hola @v-jtian-msft

¡Gracias por su respuesta!

Pero esto no es lo que he solicitado porque la columna Total se está rompiendo para cada elemento por fecha en su salida. Quiero las fechas en las columnas como en la imagen de la derecha y el total para todas las fechas de cada elemento - (para A total es 60), junto a A.

Si observa detenidamente la imagen y las dos tablas que contiene, verá que la diferencia es que la columna Total es la segunda después de la columna Elementos y, a continuación, para cada fecha, aparece el porcentaje del valor total.

Espero haber podido dejarlo más claro. Por favor, hágamelo saber si no lo tengo claro.

¡Gracias de nuevo por su ayuda!

Hola@ashishd

Gracias por su respuesta.

Lamento no haberte dado una solución satisfactoria antes.

De acuerdo con su solicitud, desea mostrar la columna "Total" en la segunda columna de la matriz, sin destruir la columna total de la matriz.

En primer lugar, debo señalar que el objeto visual de matriz en Power BI en sí tiene muchas limitaciones, por lo que dijiste que es muy difícil de realizar en Power BI, generalmente no se recomienda mostrar diferentes columnas de datos una al lado de la otra en una matriz.

Las filas y columnas de la matriz deben ser columnas reales en los datos (ya sean columnas de los datos originales o una columna de cálculo creada por humanos), los datos que proporcionó no tienen una columna total real, por lo que debe crear una nueva tabla para satisfacer indirectamente sus necesidades: junto a [elemento] (la columna total como una columna real, que se mostrará junto al [elemento])

Puede hacerlo personalizando la matriz (tenga en cuenta que este método solo funciona cuando hay menos datos, ya que necesita volver a crear una nueva tabla basada en los datos originales).
Aquí están los resultados de mis pruebas:

vjtianmsft_0-1718354158788.png

Necesidad de volver a crear una nueva tabla basada en las columnas que se muestran en la matriz [Encabezado]

La columna Ordenar por datos de tabla [_index]

vjtianmsft_1-1718354173684.png

vjtianmsft_2-1718354185158.png

M_result = 
 VAR result=SWITCH(TRUE(),
    SELECTEDVALUE(Header[category])="Materials",
    SWITCH(TRUE(),
        SELECTEDVALUE(Header[level])="5/1/2024",FORMAT([M_A],"Percent"),
        SELECTEDVALUE(Header[level])="5/2/2024",FORMAT([M_A],"Percent"),
        SELECTEDVALUE(Header[level])="5/3/2024",FORMAT([M_A],"Percent"),
        SELECTEDVALUE(Header[level])="5/4/2024",FORMAT([M_A],"Percent")
    ),
    SELECTEDVALUE(Header[category])="others",
    SWITCH(TRUE(),
        SELECTEDVALUE(Header[level])="Total",FORMAT([M_Item_Num],0)
    )
 ) 

RETURN result

M_A = 
VAR _selected =SELECTEDVALUE(Header[level])
VAR metric_value=CALCULATE(SUM('Sheet1'[Metric]),FORMAT('Sheet1'[Date],"m/d/yyyy")=_selected)
VAR sum_Metric=
CALCULATE(SUM(Sheet1[Metric]),FILTER(ALL('Sheet1'),'Sheet1'[Item]=MAX('Sheet1'[Item]))
)
RETURN 
DIVIDE(metric_value,sum_Metric,0)

M_Item_Num = CALCULATE(
    SUM('Sheet1'[Metric]),FILTER(ALL(Sheet1),Sheet1[Item]=MAX('Sheet1'[Item]))
    )

Esto hará lo que quiera, pero no podrá usar el valor total original (el valor total de la matriz está vacío, porque la columna Total y las otras columnas de fecha ya no forman parte de la misma columna cuando se agregan por filas, e incluso si se agregan, no podrán calcular la respuesta correcta). Afortunadamente, ya hemos creado una columna [total] personalizada para reemplazarla

vjtianmsft_3-1718354260138.png

Mover el valor "Total" a una posición arbitraria en la matriz (ordenado estableciendo la columna _Index) se puede lograr ordenando los valores de columna en la matriz y discutiéndolos y controlando artificialmente la salida (realizando diferentes medidas)

Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, por favor aclare en una respuesta de seguimiento.

Saludos

Carson Jian,

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






¡Gracias, @v-jtian-msft!

Esto es realmente genial. Ahora entiendo que no podemos tener una medida DAX que desempeñe un papel de dimensión en PowerBI y, por lo tanto, no hay una manera fácil de poner una medida como una fila.
Pero su enfoque ha ayudado mucho a comprender cómo pueden funcionar las cosas en PowerBI.
Realmente aprecio su esfuerzo y tiempo por ayudarme.

Saludos
Ceniza

Hola@ashishd
De nada.
Su comprensión es correcta, hay muchas limitaciones en la matriz de Power BI y muchos de los requisitos deben recrearse con nuevos datos para realizarlos.

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

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