Buscar ultima columna con datos y pegar información

Estoy construyendo una macro para una labor que realizo con frecuencia, pero he llegado a un punto donde no se cómo continuar, la situación es la siguiente:

Debo abrir una archivo de texto generado desde un ERP, organizar la información de acuerdo a mi necesidad, esta parte ya la tengo, mi dificultad está en lo que sigue que es abrir un archivo de excel que esta en una ruta que cambia todos los meses (Ej: L:\COMUNES\AÑO 2012\CIERRE MENSUAL\SEPTIEMBRE 2012\INFB 0912\INFB-M19949-2.012.xlsx), este archivo tiene una hoja de nombre IMPORTACIÓN, la hoja esta habilitada para pegar la información a partir de la celda A7, pero teniendo en cuenta que para cada mes hay dos columnas habilitadas (cuenta y Valor), asi que diciembre seria en las columnas A y B, enero en las columnas C y D, febrero E y F, y así sucesivamente hasta el próximo diciembre en la columna Y y Z, la información se debe pegar a partir de la fila 7, la idea es que cada vez que ejecute la macro se ubique la última columna con datos o en su defecto el ultimo mes actualizado, y pegar la información resultante de la rutina que ya tengo, en las siguientes dos columnas en blanco que debe corresponder al mes siguiente al que está actualizado.

Espero haber sido claro con la explicación, tengo excel 2007.

1 respuesta

Respuesta
2

Con esta sentencia tendrás la dirección de la primera celda libre que hay en la horizontal de la linea 7 y se lo adjudicamos a la variable ubica:

ubica = Range("iv7").End(xlToLeft).Address

Luego solo tienes utilizar la variable ubica para posicionarte y pegar los datos, por ejemplo:

Range(ubica). Pastespecial paste:xlvalues

No olvides finalizar la consulta

Hola, muchas gracias por la respuesta, creo que no fui muy claro con mi necesidad, antes de copiar y ubicar la ultima columna con datos, debo abrir un archivo de excel que está en una ruta que cambia todos los meses, mi idea es colocar esta ruta en una celda del archivo que contiene la macro (Ej: A1 de la Hoja1),para cambiarla manualmente cada mes, y que la macro abra el archivo ubicado en la ruta que se ponga en esa celda, es posible?, después de lograr esto si debo copiar la información al archivo que se acaba de abrir, es en este que debo ubicar la ultima columna con datos, en una hoja de nombre IMPORTACIÓN.

Agradezco inmensamente la ayuda que me pueda brindar, entiendo algo de VBa, pero aun no soy experto.

Si tenemos anotada la ruta en la celda A1 y dentro de esa ruta también está escrito el nombre del archivo con su extensión, sería algo así:

ruta = range("a1").value

Workbooks. Open ruta

Si quedó claro no olvides finalizar

Muchas gracias por compartir sus conocimientos y experiencias con quines estamos en proceso de aprendizaje. La sentencia que me envío no me funcionó tal cual como viene, pero me sirvió para complementarla con otras lineas y me quedó funcionando perfectamente.

Mil bendiciones

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas