ayuda con codigo

26/02/2004 - 19:54 por ANA | Informe spam
Hola a todos !!!
Este es mi problema en una carpeta que se llama DATOS en
esa carpeta voy a tener una lista de archivos por ejemplo
02d25.xls 02d26.xls donde 02 representa el mes y d26
el dia , cada semana se reciben nuevos archivos .
Necesito una macro para que desde un libro excel vaya
hacia esa carpeta y abra cada archivo y obtenga
determinados datos , cuando se terminen con los archivos
estos se moveran a otra carpeta llamada HISTORIAL.
Lo que no se es como escribir la parte del codigo para que
vaya hacia la carpeta DATOS y vaya trabajando con cada
archivo que encuentre en esa carpeta hasta que haya
obtenidos todos los datos que necesito de todos los
archivos.
Alguien sabe como ahcerlo?
luchas gacias
Ana
 

Leer las respuestas

#1 Fernando Arroyo
27/02/2004 - 17:43 | Informe spam
Tienes al menos tres posibilidades:
- la función Dir de VBA. Si la usas una vez con el criterio de búsqueda y luego reiteras su uso, omitiendo el criterio, obtendrás todos los archivos que lo respeten. La ayuda de la función en Excel ofrece un ejemplo bastante ilustrativo.
- el objeto FileSearch, que a su vez pertenece al objeto Application de Excel.
- el objeto FileSystemObject. Para poder usarlo tienes que establecer una referencia a la librería "Microsoft Scripting Runtime".

Yo tengo escritos algunos procedimientos usando estos dos últimos objetos. Si te interesa, puedes verlos en:

http://www.excelsp.com/vba01.htm

Mi consejo es que si son pocos los datos que debes recuperar de cada libro, mejor que abrirlos crees vínculos directos en "tiempo de ejecución" a las celdas que tengan dichos datos. Esto es normalmente bastante más rápido que ir abriendo los libros uno a uno, aunque puede requerir más cantidad de código, además de hacerlo más complejo.
Un saludo.


Fernando Arroyo
MS MVP - Excel

"ANA" escribió en el mensaje news:28c001c3fc99$eb58ff60$
Hola a todos !!!
Este es mi problema en una carpeta que se llama DATOS en
esa carpeta voy a tener una lista de archivos por ejemplo
02d25.xls 02d26.xls donde 02 representa el mes y d26
el dia , cada semana se reciben nuevos archivos .
Necesito una macro para que desde un libro excel vaya
hacia esa carpeta y abra cada archivo y obtenga
determinados datos , cuando se terminen con los archivos
estos se moveran a otra carpeta llamada HISTORIAL.
Lo que no se es como escribir la parte del codigo para que
vaya hacia la carpeta DATOS y vaya trabajando con cada
archivo que encuentre en esa carpeta hasta que haya
obtenidos todos los datos que necesito de todos los
archivos.
Alguien sabe como ahcerlo?
luchas gacias
Ana

Preguntas similares