Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

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.

Reply
Syndicate_Admin
Administrator
Administrator

Transformar datos, dividir contenido en una sola fila en varias filas individuales

Hola

Necesito dividir los contenidos de la siguiente tabla (1ª) en filas individuales (2ª Tabla), rellenando también las fechas. ¿Puede alguien aconsejar cómo automatizar esto? Adjuntar el archivo de Excel (enlace a continuación)

Cómo son los datos reales

manny_mahendran_0-1658193981388.png

Cómo lo necesito en Power BI

manny_mahendran_1-1658194044686.png

https://docs.google.com/spreadsheets/d/1qgijjGLO8hwK6hbEvhg73329eWbwsWgw/edit?usp=sharing&ouid=11332...

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Hola

Debe realizar algunos pasos en Power Query,

Después de cargar los datos en Power Query:

- Haga clic derecho en la columna País y elija Dividir columna /Por delimitador:

MahyarTF_2-1658197075169.png

- Elija '--Custom--' y ponga ',' char en el segundo campo, luego haga clic en 'Ok' :

MahyarTF_3-1658197154922.png

- Seleccione Todas las nuevas columnas (País....), luego haga clic derecho y elija 'Unpivot Columns' :

MahyarTF_4-1658197289770.png

- Eliminar la columna 'Atributo' y cambiar el nombre del 'valor' a 'País'

- Hacer el paso anterior para las otras dos columnas

- Al final, cambie el tipo de Dos columnas recientes a Texto (haga clic derecho en el título y elija Texto)

- Cambia el orden de las columnas como quieras.

- Ahora, si hace clic en el Editor avanzado en el menú, debería ver los códigos como los siguientes:

-------------------------------------------------------

......

......

......

#"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type", "Country", Splitter.SplitTextByDelimiter(",", QuoteStyle.csv), {"Country.1", "Country.2", "Country.3", "Country.4", "Country.5", "Country.6"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Country.1", type text}, {"Country.2", type text}, {"Country.3", type text}, {"Country.4", type text}, {"Country.5", type text}, {"Country.6", type text}}),
#"Columnas no votadas" = Table.UnpivotOtherColumns(#"Changed Type1", {"Cost Reduction Savings - Forecast", "Cost Reduction Savings - Deal Done", "Cost Avoidance Savings - Forecast", "Cost Avoidance Savings - Deal Done", "Revised End date"}, "Attribute", "Value"),
#"Columnas eliminadas" = Table.RemoveColumns(#"Columnas no votadas",{"Atributo"}),
#"Columnas renombradas" = Table.RenameColumns(#"Columnas eliminadas",{{"Valor", "País"}}),
#"Columnas reordenadas" = Table.ReorderColumns(#"Columnas renombradas",{"País", "Ahorro de reducción de costos - Pronóstico", "Ahorro de reducción de costos - Acuerdo realizado", "Ahorro de evitación de costos - Pronóstico", "Ahorro de evitación de costos - Acuerdo realizado", "Fecha de finalización revisada"}),
#"Split Column by Delimiter1" = Table.SplitColumn(#"Reordered Columns", "Cost Reduction Savings - Forecast", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Cost Reduction Savings - Forecast.1", "Cost Reduction Savings - Forecast.2", "Cost Reduction Savings - Forecast.3", "Cost Reduction Savings - Forecast.4", "Cost Reduction Savings - Forecast.5", "Cost Reduction Savings - Forecast.6"}),
#"Changed Type2" = Table.TransformColumnTypes(#"Split Column by Delimiter1",{{"Cost Reduction Savings - Forecast.1", type text}, {"Cost Reduction Savings - Forecast.2", type number}, {"Cost Reduction Savings - Forecast.3", type number}, {"Cost Reduction Savings - Forecast.4", type number}, {"Cost Reduction Savings - Forecast.5", type number}, {"Cost Reduction Savings - Forecast.6", type number}}),
#"Columnas no votadas1" = Table.UnpivotOtherColumns(#"Changed Type2", {"Country", "Cost Reduction Savings - Deal Done", "Cost Avoidance Savings - Forecast", "Cost Avoidance Savings - Deal Done", "Revised End date"}, "Attribute", "Value"),
#"Columnas eliminadas1" = Table.RemoveColumns(#"Columnas no votadas1",{"Atributo"}),
#"Columnas renombradas1" = Table.RenameColumns(#"Columnas eliminadas1",{{"Valor", "Ahorro de reducción de costos - Pronóstico"}}),
#"Changed Type3" = Table.TransformColumnTypes(#"Renamed Columns1",{{"Cost Reduction Savings - Forecast", type text}}),
#"Columnas reordenadas1" = Table.ReorderColumns(#"Changed Type3",{"País", "Ahorro de reducción de costos - Pronóstico", "Ahorro de reducción de costos - Acuerdo realizado", "Ahorro de evitación de costos - Pronóstico", "Ahorro de evitación de costos - Acuerdo realizado", "Fecha de finalización revisada"}),
#"Split Column by Delimiter2" = Table.SplitColumn(#"Reordered Columns1", "Cost Avoidance Savings - Forecast", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Cost Avoidance Savings - Forecast.1", "Cost Avoidance Savings - Forecast.2"}),
#"Changed Type4" = Table.TransformColumnTypes(#"Split Column by Delimiter2",{{"Cost Avoidance Savings - Forecast.1", type text}, {"Cost Avoidance Savings - Forecast.2", type number}}),
#"Columnas no votadas2" = Table.UnpivotOtherColumns(#"Changed Type4", {"Country", "Cost Reduction Savings - Forecast", "Cost Reduction Savings - Deal Done", "Cost Avoidance Savings - Deal Done", "Revised End date"}, "Attribute", "Value"),
#"Columnas eliminadas2" = Table.RemoveColumns(#"Columnas no votadas2",{"Atributo"}),
#"Columnas renombradas2" = Table.RenameColumns(#"Columnas eliminadas2",{{"Valor", "Ahorro de evitación de costos - Pronóstico"}}),
#"Changed Type5" = Table.TransformColumnTypes(#"Renamed Columns2",{{"Cost Avoidance Savings - Forecast", escriba text}}),
#"Columnas reordenadas2" = Table.ReorderColumns(#"Changed Type5",{"País", "Ahorro de reducción de costos - Pronóstico", "Ahorro de reducción de costos - Acuerdo realizado", "Ahorro de evitación de costos - Pronóstico", "Ahorro de evitación de costos - Acuerdo realizado", "Fecha de finalización revisada"}),
#"Duplicados eliminados" = Table.Distinct(#"Columnas reordenadas2")

------------------------------------------------

Los pasos deben ser como los siguientes:

MahyarTF_0-1658196501884.png

y este es el último resultado:

MahyarTF_1-1658196534108.png

Hi MahyarTF,

Esto es exactamente lo que estaba buscando. ¡Excelente solución!

Gracias de nuevo

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.