Resumir tabla (pivote)

Un usuario Pregunto ✅

Anónimo

Hola a todos,

Soy un usuario de Excel que intenta modelar algunos datos en Power BI, pero estoy atascado en el equivalente de un pivote. Si estuviera en Excel, giraría la primera tabla a continuación para eliminar el código fuente, luego buscaría en otra tabla para obtener la suma de otra columna para cada valor único de «Código de área 2» + «Cuenta GL». ¿Cuál es la mejor manera de hacer esto en Power BI? Probé SUMMARIZECOLUMNS y CALCULATE TABLE pero no estoy seguro si estoy en el camino correcto.

Si alguien tiene una buena publicación sobre cómo pasar de ser un usuario de Excel a un usuario de Power BI, también sería excelente.

Gracias por adelantado.

Esta es mi base de datos.Esta es mi base de datos.Necesito usar una combinación de Código de área 2 y Cuenta GL para traer la suma de datos de otra tabla.Necesito usar una combinación de Código de área 2 y Cuenta GL para traer la suma de datos de otra tabla.

v-piga-msft

En respuesta a Anónimo

Hola @Anonimo,

Lo siento, no he descrito mi escenario claramente.

La fórmula que compartí en mi segunda respuesta debería ser útil cuando creó el relación con enlace columna para las dos tablas.

Si no tiene una relación, debe usar esta fórmula a continuación.

Column = CALCULATE (
    SUM ( Table2[FTE Proportion] ),
    FILTER ( 'Table2','Table2'[Link]=EARLIER(Table1[Link] ) )
)

Solo me pregunto si hay valores en ‘Tabla 1’, pero ningún valor coincidente en ‘Tabla 2’ si devolverá un valor de cero o si causará un problema.


Para su pregunta, creo que este ejemplo debería explicar este escenario. En la Tabla 1, tenemos diferentes enlaces, pero en la Tabla 2 solo tenemos un enlace coincidente. Para la columna de resultados, podríamos ver si no hay valores coincidentes en la tabla 2, se mostrará en blanco en la Tabla 1.

También hice un ejemplo simple que debería aclararte.

Sin título.png

Atentamente,

cereza

BobBI

Hola ,

No estoy seguro de qué es exactamente lo que estaba tratando de lograr, sin embargo, puede probar esto y jugar un poco para obtener el resultado deseado.

Sus datos base están en Table1, cree una tabla calculada «NewTable», agrupe por código de área/cuenta GL

Nota: también puede crear una clave compuesta ‘CK’ para combinar el código de área 2 y GL para identificar de forma única cada fila.

NuevaTabla=

RESUMIR(Tabla 1,
Tabla 1[Area Code 2],
Tabla 1[GL Account],
«CK»,Tabla 1[Area Code 2]&Tabla 1[GL Account],
«Total»,CALCULAR(suma(Tabla 1[Total amount]))

)

ahora, si tiene que recorrer el valor de otra tabla, su función LookupValue

«buscarValor», BUSCARVALOR(Tabla2[total amount],Tabla 2[CK],tabla 1[CK])

Espero que esto te dé una dirección.

Buena suerte ,

SS

Anónimo

En respuesta a BobBI

Hola,

Gracias. El DAX para NewTable funcionó, pero todavía no obtengo la respuesta correcta con la búsqueda. Creo que necesito el equivalente de un SUMIF. En mi nueva tabla, tengo un único valor único en cada fila, pero el mismo valor está en varias filas de la segunda tabla y necesito la suma de cada una de esas filas. ¿Me pueden ayudar con el orden correcto para la función CALCULAR? No estoy seguro de haber explicado esto lo suficientemente bien.

Tabla 1:

A

B

C

Tabla 2:

un 1

un 2

un 3

La función debería devolver una nueva columna en la Tabla 1 que tenga un total de 6 al lado de A.

PattemManohar

@Anónimo Sería genial si puede publicar algunos datos de muestra (formato copiable) y esperar. Pero de todos modos, según su publicación, puedo sugerirle que cree una tabla calculada intermedia (con la suma de los valores de un campo que le interesa con el grupo por código de área 2 y cuenta GL) desde su tabla de búsqueda principal. Ahora, esta tabla intermedia será su tabla de búsqueda que ya tiene valores resumidos para cada combinación de AreaCode 2 + Cuenta GL. Espero que esto ayude !!

Anónimo

En respuesta a PattemManohar

Gracias por la ayuda.

v-piga-msft

En respuesta a Anónimo

Hola @Anonimo,

¿Qué pasa con esta medida?

Measure =
CALCULATE (
    SUM ( Table2[value] ),
    FILTER ( 'Table2', 'Table2'[Table] = RELATED ( Table1[Table 1] ) )
)

Si aún necesita ayuda, comparta su muestra de datos en formato de tabla para que pueda hacer una copia y hacer una prueba con su muestra de datos.

Además, le agradecería si pudiera compartir su resultado deseado.

Atentamente,

cereza

Anónimo

En respuesta a v-piga-msft

Hola cereza,

Gracias por tu ayuda. Probé su expresión DAX, pero devuelve el mismo número para cada fila.

No puedo ver cómo puedo adjuntar un archivo para que pruebes los datos. Tengo una versión de Excel que puedo adjuntar si es posible. He copiado y pegado a continuación, tal vez eso funcione. Cuando uso la expresión DAX que me diste, obtengo el resultado en la columna «FTE».

Mis tablas están relacionadas a través de la columna «enlace». Lo que estoy tratando de hacer es para cada fila que tiene un valor único (es decir, Enlace = 201611001), sume todos los valores en la columna «Proporción FTE» de la segunda tabla y colóquelos en una nueva columna en el primera tabla. Espero que tenga sentido. En Excel, una fórmula sumif haría esto por mí.

COLL2 COLL3 FFS Nivel 3 Cuenta GL Enlace Cantidad total Asignación 1 Asignación 2 ETC SUMAR.SI
21000 20161 3011 1001 201611001 882501.76 661876.32 220625.44 3.136730309 4.98
21000 20161 3013 1701 201611701 169228.68 159632.38 9596.3 3.136730309 0,65
21000 20161 3014 1101 201611101 138464.76 131989.62 6475.14 3.136730309 0.08
21000 20179 3011 1001 201791001 13032089.39 8743944.57 4288144.82 3.136730309 67.42
21000 20179 3013 1701 201791701 18569913.68 9159696.04 9410217.64 3.136730309 114.2
21000 20179 3014 1101 201791101 2606951.97 2251952.71 354999.26 3.136730309 53.51
21000 21100 3011 1001 211001001 221992.36 166494.27 55498.09 3.136730309 3.03
21000 21100 3013 1701 211001701 757491.66 757491.66 0 3.136730309 0.08
22000 20176 3011 1001 201761001 7734973.49 6282546.329 1452427.161 3.136730309 52.58
22000 20176 3013 1701 201761701 4647075.43 3353017.66 1294057.77 3.136730309 26.57
22000 20176 3014 1101 201761101 2704472.89 2634420.35 70052.54 3.136730309 30.22
22000 20180 3011 1001 201801001 5619435.23 4720325.593 899109.6368 3.136730309 46.97
22000 20180 3013 1701 201801701 2437414.14 2251792.75 185621.39 3.136730309 7.28
22000 20180 3014 1101 201801101 4412830.23 4399555.8 13274.43 3.136730309 24.35
22000 22100 3011 1001 221001001 47143.97 39600.9348 7543.0352 3.136730309 0
22000 22100 3013 1701 221001701 526079.55 526079.55 0 3.136730309 1.9
22000 22100 3014 1101 221001101 229.99 229.99 0 3.136730309 0
22000 22300 3014 1101 223001101 24.84 24.84 0 3.136730309 0

COLL2 COLL3 Centro de costos del libro mayor Código de proyecto de GL Cuenta Natural GL Proporción FTE ENLACE
21000 20161 594 2032 1001 0.18 201611001
21000 20161 594 2032 1001 0.41 201611001
21000 20161 594 2032 1001 0.15 201611001
21000 20161 594 2032 1001 0.06 201611001
21000 20161 594 2032 1001 0.42 201611001
21000 20161 594 2032 1001 0.16 201611001
21000 20161 594 2032 1001 0.16 201611001
21000 20161 594 2032 1001 0.03 201611001
21000 20161 594 2032 1001 0.03 201611001
21000 20161 594 2032 1001 0.08 201611001
21000 20161 594 2032 1001 0.02 201611001
21000 20161 594 2032 1001 0.04 201611001
21000 20161 594 2032 1001 0.03 201611001
21000 20161 594 2032 1001 0.11 201611001
21000 20161 594 2032 1001 0.09 201611001
21000 20161 594 2032 1001 0.41 201611001
21000 20161 594 2032 1001 0.03 201611001
21000 20161 594 2032 1001 0.07 201611001

v-piga-msft

En respuesta a Anónimo

Hola @Anonimo,

Cree la columna calculada con esta fórmula a continuación.

Column = CALCULATE (
    SUM ( Table2[FTE Proportion] ),
    FILTER ( 'Table1','Table1'[Link]=EARLIER(Table1[Link] ) )
)

Entonces podría obtener la salida como se muestra a continuación.

Sin título.png

El 2.48 es la suma de FTE Proporción en la que el enlace es 20161101 en la tabla siguiente.

Atentamente,

cereza

Anónimo

En respuesta a v-piga-msft

Hola de nuevo,

Solo me pregunto si hay valores en ‘Tabla 1’, pero ningún valor coincidente en ‘Tabla 2’ si devolverá un valor de cero o si causará un problema.

Saludos,

Verdad

v-piga-msft

En respuesta a Anónimo

Hola @Anonimo,

Lo siento, no he descrito mi escenario claramente.

La fórmula que compartí en mi segunda respuesta debería ser útil cuando creó el relación con enlace columna para las dos tablas.

Si no tiene una relación, debe usar esta fórmula a continuación.

Column = CALCULATE (
    SUM ( Table2[FTE Proportion] ),
    FILTER ( 'Table2','Table2'[Link]=EARLIER(Table1[Link] ) )
)

Solo me pregunto si hay valores en ‘Tabla 1’, pero ningún valor coincidente en ‘Tabla 2’ si devolverá un valor de cero o si causará un problema.


Para su pregunta, creo que este ejemplo debería explicar este escenario. En la Tabla 1, tenemos diferentes enlaces, pero en la Tabla 2 solo tenemos un enlace coincidente. Para la columna de resultados, podríamos ver si no hay valores coincidentes en la tabla 2, se mostrará en blanco en la Tabla 1.

También hice un ejemplo simple que debería aclararte.

Sin título.png

Atentamente,

cereza

Anónimo

En respuesta a v-piga-msft

Gracias. Encontré mi problema, mis datos en mi columna de enlace no eran correctos para una de las tablas.

La fórmula funciona perfectamente.

v-piga-msft

En respuesta a Anónimo

Hola @Anonimo,

Eres bienvenido. Es un placer que podamos ayudar.carita muy feliz

Atentamente,

cereza

Anónimo

En respuesta a v-piga-msft

Gracias cereza,

Tiene mucho sentido, pero debo tener algo mal ya que todavía no obtengo un resultado. ¿Puede compartir su archivo ficticio conmigo para que pueda tratar de averiguar dónde me he perdido algo?

Anónimo

En respuesta a v-piga-msft

Hola cereza,

De nuevo, gracias por tu ayuda.

Puedes por favor explique lo que está haciendo el filtro? ¿Por qué solo se refiere a Table1?

Intenté usar la fórmula tal como está escrita y también sustituí Table2 en la fórmula, pero sigo devolviendo filas en blanco.

Saludos,

Verdad

Deja un comentario

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