tedbelv88
Hola,
Estoy recibiendo datos de Excel externos para conectarlos e incorporarlos a los elementos visuales de Power BI. Este archivo de Excel externo tiene una columna que enumera 1 o más valores delimitados por comas (captura de pantalla a continuación). ¿Hay alguna forma en Power BI de sumar los valores numéricos delimitados en una nueva columna / medida?
Ejemplo:
Columna de valor de texto = «1788.48, 21331.65»
Columna deseada = 23120.13
Gracias,
Ted
v-lid-msft
Hola @ tedbelv88,
Podemos agregar una columna personalizada en Power Query Editor para cumplir con sus requisitos:
List.Sum(List.Transform(List.ReplaceValue(Text.Split([Value],",")," ","",Replacer.ReplaceText),each Number.From(_)))
Todas las consultas están aquí:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("VVDJEQQhCExlyrdFASJHLFPmn8YA7mdf9kFz+L6DxhyEKxYwzocIkUAbESpgI18/l1UQ0BOlEuPMd3DmWQhh63xYDQP0Out2Ngb17rL1dq4s16vk4KUIBVBJYl7jOy+VN3eQjHOm0tnt7HS2WO7UVHtQgEhT+6eeVLI4tGnUvrYJ/NqEVb5cVh52lfoSJg2DhOd8", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [ID = _t, Value = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"ID", Int64.Type}, {"Value", type text}}),
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each List.Sum(List.Transform(List.ReplaceValue(Text.Split([Value],",")," ","",Replacer.ReplaceText),each Number.From(_))))
in
#"Added Custom"
Si no cumple con sus requisitos, muestre el resultado esperado exacto según las tablas que ha compartido.
Atentamente,
v-lid-msft
Hola @ tedbelv88,
¿Qué tal el resultado después de seguir las sugerencias mencionadas en mi publicación original? ¿Podría proporcionar más detalles al respecto si no cumple con sus requisitos?
Atentamente,
v-lid-msft
Hola @ tedbelv88,
Podemos agregar una columna personalizada en Power Query Editor para cumplir con sus requisitos:
List.Sum(List.Transform(List.ReplaceValue(Text.Split([Value],",")," ","",Replacer.ReplaceText),each Number.From(_)))
Todas las consultas están aquí:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("VVDJEQQhCExlyrdFASJHLFPmn8YA7mdf9kFz+L6DxhyEKxYwzocIkUAbESpgI18/l1UQ0BOlEuPMd3DmWQhh63xYDQP0Out2Ngb17rL1dq4s16vk4KUIBVBJYl7jOy+VN3eQjHOm0tnt7HS2WO7UVHtQgEhT+6eeVLI4tGnUvrYJ/NqEVb5cVh52lfoSJg2DhOd8", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [ID = _t, Value = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"ID", Int64.Type}, {"Value", type text}}),
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each List.Sum(List.Transform(List.ReplaceValue(Text.Split([Value],",")," ","",Replacer.ReplaceText),each Number.From(_))))
in
#"Added Custom"
Si no cumple con sus requisitos, muestre el resultado esperado exacto según las tablas que ha compartido.
Atentamente,
mtaylor_PMA
En respuesta a v-lid-msft
Esto fue fantástico; Me registré para comentar en este foro solo para decir lo agradecido que estoy por esto, ¡era EXACTAMENTE lo que necesitaba!
ChrisMendoza
@ tedbelv88 –
Podría haber, pero, ¿por qué no simplemente limpiarlo en Power Query?
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("HcvBCQAxCETRVhbPIjOJMViL2H8bK7l9HvwqIXZuW9CPBGgB5VQYIK0lywk7oSsu0iIfHr+zvOSou3T/", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Value = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Value", type text}}),
#"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"Value", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Value"),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Value", type number}})
in
#"Changed Type1"