Forum Discussion
Columna condicional compleja
- 4 years ago
Hola
Esta fórmula de columna calculada funciona
=if(CALCULATE(COUNTROWS(Table1),FILTER(Table1,Table1[Column A]=EARLIER(Table1[Column A])&&Table1[Column B]="Yes"))>=1,"Yes",BLANK())Espero que esto ayude.
- 4 years ago
Vea el trabajo aquí - Abrir una consulta en blanco - Inicio - Editor avanzado - Elimine todo desde allí y pegue el siguiente código para probar (más adelante, cuando use la consulta en su conjunto de datos, tendrá que cambiar la fuente adecuadamente. Si tiene columnas distintas de estas, elimine el paso Tipo cambiado y vuelva a realizar un tipo modificado para completar la tabla de la interfaz de usuario).
Nota: es posible que el paso de valor reemplazado no sea necesario para usted, ya que lo he utilizado para generar valores nulos en lugar de espacios en blanco.
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("rdC7DcAgDATQXVxTYOMfo0SIMhNkfylARYRCmrRPZ53tUgApimZjVjEIcJwX1LDw1gyZWXL+1TTxh6lTn7X0YtMpm6jTZIatotX4wzz2nC6mcX6DMY0VcVi9AQ==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Column A" = _t, #"Column B" = _t]), #"Replaced Value" = Table.ReplaceValue(Source,"",null,Replacer.ReplaceValue,{"Column B"}), #"Changed Type" = Table.TransformColumnTypes(#"Replaced Value",{{"Column A", Int64.Type}, {"Column B", type text}}), #"Grouped Rows" = Table.Group(#"Changed Type", {"Column A"}, {{"Temp", each _, type table [Column A=nullable number, Column B=nullable text]}}), //Function Start fxProcess=(Tbl)=> let #"Added Custom" = Table.AddColumn(Tbl, "Column C", each if List.Count(List.Select(Tbl[Column B],each _="Yes"))>0 then "Yes" else null) in #"Added Custom", //Function End #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each fxProcess([Temp])), #"Expanded Custom" = Table.ExpandTableColumn(#"Added Custom", "Custom", {"Column B", "Column C"}, {"Column B", "Column C"}), #"Removed Columns" = Table.RemoveColumns(#"Expanded Custom",{"Temp"}) in #"Removed Columns"
Pruebe este código para agregar una nueva columna con DAX:
Column C =
VAR _Yes =
CALCULATE (
COUNTROWS ( 'Table' ),
FILTER ( ALLEXCEPT ( 'Table', 'Table'[Column A] ), 'Table'[Column B] = "Yes" )
)
RETURN
IF ( _Yes > 0, "Yes", BLANK () )
Salida:
Si esta publicación ayuda, considere aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Aprecia tus felicitaciones!!
LinkedIn: www.linkedin.com/in/vahid-dm/
- Syndicate_Admin4 years ago
Administrator
Esto es genial, ¡gracias! Agradezco la ayuda.
Al igual que la solución de Ashish, esta solución funciona totalmente en DAX. Sin embargo, necesito hacer esto en Power Query porque posteriormente fusiono esta tabla con otra. ¿Alguna sugerencia para eso?