Saltar al contenido

Import / Export (Power Query)


RandalHP

Recommended Posts

publicado

Buenas tardes,

Existe una forma de poder importar y exportar las consultas que he realizado en mi libro de excel.

Estoy intentando cambiar el "Source" del libro que he trabajado, pero me está dando problemas el nombre de la hoja a la cual le quiero aplicar las consultas.

Podría exportar las consultas que tengo en mi libro y aplicarlo a otro?

Ss.

publicado

Hola Randalhp

Hace 17 horas, RandalHP dijo:

Estoy intentando cambiar el "Source" del libro que he trabajado, pero me está dando problemas el nombre de la hoja a la cual le quiero aplicar las consultas.

En PQ, busca en que paso, eliges el nombre de la hoja y lo modificas, hay otras alternativas pero sin ver archivo no es fácil determinar, el problema real 

 

Saludos

publicado
Hace 34 minutos , Gerson Pineda dijo:

Hola Randalhp

En PQ, busca en que paso, eliges el nombre de la hoja y lo modificas, hay otras alternativas pero sin ver archivo no es fácil determinar, el problema real 

 

Saludos

Perdón, se me olvidó adjuntar el archivo de trabajo. Es necesario cambiar siempre el nombre de la "Hoja" en el "Source" para actualizar una nueva información?

Ss.

DT_CARGA.xlsm

publicado

Varias preguntas:

¿Tus libros no contienen tablas? / ¿Tus libros siempre van a tener múltiples hojas?

 

Al momento de cargar un libro con múltiples hojas, te va solicitar que selecciones una de ella, entonces PQ crea automáticamente 3 pasos mas... aquí viene un truco: 

  • Elimina esos pasos de modo que solo quede el de "Source"
  • Luego filtra en "Name" por la hoja que deseas

Lo dejo hasta aquí y dime si lo haz entendido, para seguir explicándote

 

Saludos 

publicado
Hace 2 minutos , Gerson Pineda dijo:

Varias preguntas:

¿Tus libros no contienen tablas? / ¿Tus libros siempre van a tener múltiples hojas?

 

Al momento de cargar un libro con múltiples hojas, te va solicitar que selecciones una de ella, entonces PQ crea automáticamente 3 pasos mas... aquí viene un truco: 

  • Elimina esos pasos de modo que solo quede el de "Source"
  • Luego filtra en "Name" por la hoja que deseas

Lo dejo hasta aquí y dime si lo haz entendido, para seguir explicándote

 

Saludos 

Respuestas:

1. El libro que estoy anexando al PQ no contienen tablas. Es un reporte que extraigo de un sistema.

2. Siempre contiene 1 sola hoja, pero el nombre de ella cambia según el número de veces que descargo el reporte: 1, 2, 3, etc.

El PQ que cree se originó de una Hoja de Cálculo:

image.thumb.png.cbfddcc28cef6944d542b5eebd0f83a9.png

Cuando se refiere a que elimine los 3 primeros pasos, se refiere a estos:

image.png.efb5907b84863212c131fe3ad8b17cba.png

Paso 1:

= Excel.Workbook(File.Contents("C:\Users\rheredia005\Desktop\REGISTRO DE VENTAS 25 AL 31 OCTUBRE 2019 KL.xlsx"), null, true)

Paso 2:

= Source{[Item="1893638822",Kind="Sheet"]}[Data]

Paso 3:

= Table.PromoteHeaders(#"1893638822_Sheet", [PromoteAllScalars=true])

*Adjunto Excel que estoy anexando al PQ para que pueda visualizar los comandos que utilice.

Ss.

REGISTRO DE VENTAS 25 AL 31 OCTUBRE 2019 KL.xlsx

publicado

Copia esto en tu consulta y modifica la ruta

let
    Origen = Excel.Workbook(File.Contents("aqui la ruta completa del libro"), null, true),
    #"Otras columnas quitadas" = Table.SelectColumns(Origen,{"Data"}),
    #"Se expandió Data" = Table.ExpandTableColumn(#"Otras columnas quitadas", "Data", {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10", "Column11", "Column12", "Column13", "Column14", "Column15", "Column16", "Column17", "Column18", "Column19", "Column20"}, {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10", "Column11", "Column12", "Column13", "Column14", "Column15", "Column16", "Column17", "Column18", "Column19", "Column20"}),
    #"Filas superiores quitadas" = Table.Skip(#"Se expandió Data",4),
    #"Encabezados promovidos" = Table.PromoteHeaders(#"Filas superiores quitadas", [PromoteAllScalars=true]),
    #"Tipo cambiado" = Table.TransformColumnTypes(#"Encabezados promovidos",{{"P", type text}, {"DOC", type text}, {"DOCUMENT", type text}, {"GUIA", type text}, {"EMISION", type date}, {"RAZON SOCIAL", type text}, {"I", type text}, {"IDENTIDAD", type text}, {"IMPONIBLE", type number}, {"INAFECTO", Int64.Type}, {"Column11", type number}, {"TOTAL", Int64.Type}, {"Column13", type text}, {"OPERACION", Int64.Type}, {"PAGO", type date}, {"Column16", type text}, {"SOLES", type number}, {"DOLARES", type number}, {"CAMBIO", type number}, {"     ", type any}})
in
    #"Tipo cambiado"

La clave esta en el segundo paso, lo que hago es ignorar el nombre de la hoja, para obtener los datos de toda la hoja 

 

Saludos 

publicado
Hace 13 minutos , Gerson Pineda dijo:

Copia esto en tu consulta y modifica la ruta


let
    Origen = Excel.Workbook(File.Contents("aqui la ruta completa del libro"), null, true),
    #"Otras columnas quitadas" = Table.SelectColumns(Origen,{"Data"}),
    #"Se expandió Data" = Table.ExpandTableColumn(#"Otras columnas quitadas", "Data", {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10", "Column11", "Column12", "Column13", "Column14", "Column15", "Column16", "Column17", "Column18", "Column19", "Column20"}, {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10", "Column11", "Column12", "Column13", "Column14", "Column15", "Column16", "Column17", "Column18", "Column19", "Column20"}),
    #"Filas superiores quitadas" = Table.Skip(#"Se expandió Data",4),
    #"Encabezados promovidos" = Table.PromoteHeaders(#"Filas superiores quitadas", [PromoteAllScalars=true]),
    #"Tipo cambiado" = Table.TransformColumnTypes(#"Encabezados promovidos",{{"P", type text}, {"DOC", type text}, {"DOCUMENT", type text}, {"GUIA", type text}, {"EMISION", type date}, {"RAZON SOCIAL", type text}, {"I", type text}, {"IDENTIDAD", type text}, {"IMPONIBLE", type number}, {"INAFECTO", Int64.Type}, {"Column11", type number}, {"TOTAL", Int64.Type}, {"Column13", type text}, {"OPERACION", Int64.Type}, {"PAGO", type date}, {"Column16", type text}, {"SOLES", type number}, {"DOLARES", type number}, {"CAMBIO", type number}, {"     ", type any}})
in
    #"Tipo cambiado"

La clave esta en el segundo paso, lo que hago es ignorar el nombre de la hoja, para obtener los datos de toda la hoja 

 

Saludos 

Creo que entiendo bien lo que me estas explicando, pero como tenemos el Excel en Español e Inglés me estoy desorientado.

Este nuevo código que me estás proporcionando es el mismo que se encuentra en mi hoja de trabajo?

Estoy intentando colocar el nuevo "comando", después de "Source":

#"Otras columnas quitadas" = Table.SelectColumns(Origen,{"Data"}),

Pero me esta dando error...

:(

publicado
Hace 1 hora, RandalHP dijo:

Este nuevo código que me estás proporcionando es el mismo que se encuentra en mi hoja de trabajo?

Estoy intentando colocar el nuevo "comando", después de "Source":

Lo que quise decirte, es que reemplaces tus códigos en la consulta que tu tienes en ese libro, te vas al editor avanzado de Power Query y reemplazas todo por el que te envié, luego sigues con tus transformaciones siguientes

 

Saludos 

publicado
Hace 15 horas, Gerson Pineda dijo:

Lo que quise decirte, es que reemplaces tus códigos en la consulta que tu tienes en ese libro, te vas al editor avanzado de Power Query y reemplazas todo por el que te envié, luego sigues con tus transformaciones siguientes

 

Saludos 

Listo! Creo que estaba modificando mal el código por eso me saltaba error. Al final el código quedo asi:

 image.png.60b5d811ab8713c70e534db95e366a41.png

 

Para concluir con el tema. Si tengo otro archivo con el mismo formato, cantidad de columnas pero diferente información. Esta se actualizará?

Igual cuando me pases un nuevo reporte lo probare y te comentare.

Un saludo.

publicado

 

Hace 6 minutos , RandalHP dijo:

Para concluir con el tema. Si tengo otro archivo con el mismo formato, cantidad de columnas pero diferente información. Esta se actualizará?

Pero desde luego que si

 

Saludos 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.