El encabezado de la columna de datos de origen cambia cada mes

Un usuario Pregunto ✅

Data_Me_Up

Hola,

Esta es mi primera publicación uniéndome a esta comunidad, agradezco cualquier comentario.

Mi conjunto de datos es un informe financiero que muestra datos reales y pronósticos. Julio Junio.

Ejemplo (4 columnas)

Real Julio 2018

Real Agosto 2018

Actual Septiembre 2018

Pronóstico Octubre 2018

He preparado una imagen basada en estos encabezados de columna actuales.

Sin embargo, el próximo mes, cuando se ejecute el informe, la columna «Pronóstico de octubre de 2018» se convertirá en «Actual de octubre de 2018».

Esto puede hacer que el visual no funcione.

¿Hay alguna manera de lidiar con el cambio de encabezados de columna en los datos de origen?

Gracias por tu tiempo.

j

Data_Me_Up

En respuesta a Anónimo

Gracias por su tiempo en responder a mi consulta.

El método no se adaptó exactamente a la consulta.

Pude continuar buscando una respuesta y encontré esta solución http://power-bi-usergroup.blogspot.com/2015/12/dealing-with-tables-with- Changing.html

Esto funciona para mis propósitos incluso cuando hay un cambio en los encabezados de las columnas en los datos de origen.

annieshahid

Hola, quiero lograr lo mismo y no puedo encontrar una solución. ¿Puedes decir la solución que encontraste aquí? La página a la que te refieres ya no está.

Realmente aprecio cualquier ayuda.

Anónimo

La única sugerencia que puedo hacer es hacer uso de la función Transponer en Power Query. Esto le permitiría traer los datos cada vez, rotar los datos de modo que sus encabezados sean ahora la primera columna. Luego agregaría una columna de índice, la movería para convertirla en la primera columna. Cambie el nombre de cada número en el Índice para que sean los nombres de las columnas que desea que no cambien, luego elimine los encabezados financieros.

Transponga la tabla hacia atrás y asegúrese de que los nuevos encabezados sean los nombres de los encabezados de las columnas. Desde aquí, se puede completar cualquier manipulación de importación que haya estado haciendo anteriormente.

Siempre que sus columnas estén siempre en el mismo orden, esto debería funcionar.

Data_Me_Up

En respuesta a Anónimo

Gracias por su tiempo en responder a mi consulta.

El método no se adaptó exactamente a la consulta.

Pude continuar buscando una respuesta y encontré esta solución http://power-bi-usergroup.blogspot.com/2015/12/dealing-with-tables-with- Changing.html

Esto funciona para mis propósitos incluso cuando hay un cambio en los encabezados de las columnas en los datos de origen.

Anónimo

En respuesta a Anónimo

Aquí hay un ejemplo que ilustra lo que quiero decir (la fuente de datos es solo una tabla rápida de ‘Ingresar fecha’).
Debería poder crear una consulta en blanco y copiar este código en el Editor avanzado:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUXICYmcgdlGK1YlWcgWy3IDYHYg9wCKeQJYXEHsDsQ9YxBfI8gNifyAOUIqNBQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [#"Wrong Heading1" = _t, #"Wrong Heading2" = _t, #"Wrong Heading3" = _t, #"Wrong Heading4" = _t]),
    #"Demoted Headers" = Table.DemoteHeaders(Source),
    #"Transposed Table" = Table.Transpose(#"Demoted Headers"),
    #"Added Index" = Table.AddIndexColumn(#"Transposed Table", "Index", 0, 1),
    #"Reordered Columns" = Table.ReorderColumns(#"Added Index",{"Index", "Column1", "Column2", "Column3", "Column4", "Column5"}),
    #"Set Index to Text" = Table.TransformColumnTypes(#"Reordered Columns",{{"Index", type text}}),
    #"Replaced Value" = Table.ReplaceValue(#"Set Index to Text","3","Right Heading 4",Replacer.ReplaceText,{"Index"}),
    #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","2","Right Heading 3",Replacer.ReplaceText,{"Index"}),
    #"Replaced Value2" = Table.ReplaceValue(#"Replaced Value1","1","Right Heading 2",Replacer.ReplaceText,{"Index"}),
    #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","0","Right Heading 1",Replacer.ReplaceText,{"Index"}),
    #"Remove Bad Headings" = Table.RemoveColumns(#"Replaced Value3",{"Column1"}),
    #"Transposed Table Back" = Table.Transpose(#"Remove Bad Headings"),
    #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table Back", [PromoteAllScalars=true]),
    #"Set Field Types" = Table.TransformColumnTypes(#"Promoted Headers",{{"Right Heading 1", type text}, {"Right Heading 2", type text}, {"Right Heading 3", type text}, {"Right Heading 4", type text}})
in
    #"Set Field Types"

Deja un comentario

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