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.
Hola
Estoy buscando una (esperemos) medida DAX simple para resolver el siguiente problema.
Tengo una gama compuesta por un número de empleados, un producto elegido y sus ahorros en cada producto. En una tabla diferente, necesito crear una medida que devuelva el nombre del producto que contiene la mayor suma combinada de ahorros. Por ejemplo, la Persona 1, esto sería "Producto B", porque los 750.000 en el Producto B superan los 500.000 del Producto A (si hubiera sido contrario, la medida debería devolver el "Producto A").
Estoy trabajando en PowerPivot en Excel 2013 y anteriormente he confiado en "FIRSTNONBLANK" ya que los rangos no han contenido valores de dulicado. Sin embargo, esa solución ya no es suficiente. Cualquier ayuda es muy apreciada.
¡Gracias!
Solved! Go to Solution.
Hola @Phil123456789,
Excel y power bi utilizan lógica y estructura diferentes para almacenar tablas de datos.
Tal vez pueda intentar convertir la tabla en la tabla de consulta y usar la 'consulta M' para crear una consulta de referencia para resumir los registros de tabla sin procesar.
let
Source = RawTable,//change to your query table name
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Name", type text}, {"Product", type text}, {"Amount", Int64.Type}}),
#"Grouped Rows" = Table.Group(#"Changed Type", {"Name", "Product"}, {{"Total", each List.Sum([Amount]), type nullable number}}),
#"Grouped Rows1" = Table.Group(#"Grouped Rows", {"Name"}, {{"Count", each Table.LastN(_, 1), type table}}),
#"Expanded Count" = Table.ExpandTableColumn(#"Grouped Rows1", "Count", {"Product", "Total"}, {"Product", "Total"})
in
#"Expanded Count"
saludos
Xiaoxin Sheng
Hola
Estas medidas funcionan
Importe total: SUM(Datos[Cantidad])
Producto superior: FIRSTNONBLANK ( TOPN ( 1, VALUES ( Data[Product] ), [Importe total] ), 1 )
Espero que esto ayude.
Hola
Puede descargar mi archivo PBI desde aquí.
Espero que esto ayude.
Hola
Estas medidas funcionan
Importe total: SUM(Datos[Cantidad])
Producto superior: FIRSTNONBLANK ( TOPN ( 1, VALUES ( Data[Product] ), [Importe total] ), 1 )
Espero que esto ayude.
Disculpas por mi respuesta retrasada, no tuvo la oportunidad de tratar de implementar las sugerencias.
@Ashish_Mathur,la solución funcionó perfectamente, gracias. Y también, gracias a todos los demás que vinieron con sugerencias, muy apreciado!
De nada.
@Ashish_Mathur,seguimiento rápido de esto.
¿Hay una manera fácil de agregar una condición a la fórmula de que la clasificación está condicionada a que el producto no esté en blanco?
Recientemente tuvo un caso en el que faltaba un producto, pero como contenía el valor más grande, se devolvió un espacio en blanco.
¡Gracias!
Hola
Comparta algunos datos y muestre el resultado esperado.
Hola
Puede descargar mi archivo PBI desde aquí.
Espero que esto ayude.
De nada.
Hola @Phil123456789
eche un vistazo a la siguiente solución:
Max Amount =
Var _Rank = RANKX(ALL('Table'[Product]),[Sum of Amount],,DESC)
RETURN
IF(_Rank = 1, [Sum of Amount], BLANK())
Con saludos amables desde la ciudad donde la leyenda del 'Pied Piper de Hamelin' está en casa
FrankAT (Orgulloso de ser un Datanaut)
Gracias @FrankAT,trabajó un encanto en PowerBI.
Sin embargo, al intentar convertir la fórmula a Excel PowerPivot, no puedo hacer que funcione.
Creo que el problema es que Excel no le permitirá devolver una cadena de texto en una tabla dinámica (a menos que se utilice con, por ejemplo, FIRSTNONBLANK).
¿Cómo ajusto la fórmula, para obtener la fórmula para devolver el producto correcto como una cadena de texto (no necesito mostrar las cantidades reales en la tabla, solo el producto)?
Hola @Phil123456789,
Excel y power bi utilizan lógica y estructura diferentes para almacenar tablas de datos.
Tal vez pueda intentar convertir la tabla en la tabla de consulta y usar la 'consulta M' para crear una consulta de referencia para resumir los registros de tabla sin procesar.
let
Source = RawTable,//change to your query table name
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Name", type text}, {"Product", type text}, {"Amount", Int64.Type}}),
#"Grouped Rows" = Table.Group(#"Changed Type", {"Name", "Product"}, {{"Total", each List.Sum([Amount]), type nullable number}}),
#"Grouped Rows1" = Table.Group(#"Grouped Rows", {"Name"}, {{"Count", each Table.LastN(_, 1), type table}}),
#"Expanded Count" = Table.ExpandTableColumn(#"Grouped Rows1", "Count", {"Product", "Total"}, {"Product", "Total"})
in
#"Expanded Count"
saludos
Xiaoxin Sheng
@Phil123456789 , Basado en lo que tengo
Crear una medida de rango y filtrar rango n.o 1
medida de rango ?
Rankx(all(Table[product]), calculate(Sum(Table[Amount])))
Gracias @amitchandak, fórmula parece funcionar.
Sin embargo, dado que uso los nombres ("Persona 1", "Persona 2", etc.) como filtro de fila en la tabla dinámica, solo se devuelve un producto como valor. Por lo tanto, la función rank simplemente devuelve "1" para todos los empleados, y por lo tanto no es posible filtrar.
¿Alguna sugerencia alternativa?
@Phil123456789, este trabajo de clasificación de cómo medir. El que sugerí creará un solo rango si se usa con el producto y si se usa con el empleado se meterá dentro del empleado.
Inténtalo como
RANKX (
FILTRO(
ALL( //////////Or allselected
'Tabla'[empleado],
'Tabla'[producto]
),
'Table'[empleado] á MAX('Table'[empleado])
),
CALCULATE(SUM('Table'[Amount]))
)
Para rango Consulte estos enlaces
https://radacad.com/how-to-use-rankx-in-dax-part-2-of-3-calculated-measures
https://radacad.com/how-to-use-rankx-in-dax-part-1-of-3-calculated-columns
https://radacad.com/how-to-use-rankx-in-dax-part-3-of-3-the-finale
https://community.powerbi.com/t5/Community-Blog/Dynamic-TopN-made-easy-with-What-If-Parameter/ba-p/3...
Gracias @amitchandak,voy a echar un vistazo a los enlaces.
No estoy seguro de cómo funciona la medida propuesta, ya que requiere tomar MAX de empleado, que es una cadena.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |