Sí, Arturo, es posible hacerlo utilizando código VBA en Access. En términos generales, deberías crear una función o subrutina que use el objeto FileSystemObject de la biblioteca de objetos de Microsoft Scripting Runtime para buscar el archivo y sus subdirectorios, y luego agregar la información relevante (nombre y ubicación) a una tabla en la base de datos de Access.
Aquí te dejo un ejemplo básico de cómo podrías hacerlo:
1. Abre el editor de Visual Basic en Access (presiona ALT + F11) y crea un nuevo módulo.
2. En la parte superior del módulo, agrega la siguiente declaración para habilitar el uso de FileSystemObject:
3. Crea una función o subrutina que tome como argumento la ruta del directorio que deseas buscar, y que utilice el objeto FileSystemObject para recorrer el directorio y sus subdirectorios en busca de archivos. Por ejemplo:
4. En la línea que dice "Aquí puedes agregar la información del archivo a una tabla en la base de datos", deberías reemplazar "Debug.Print archivo.Path" con código que agregue la información relevante a una tabla en la base de datos de Access. Por ejemplo:
En este ejemplo, suponemos que tienes una tabla llamada "TablaDeArchivos" con dos campos llamados "NombreArchivo" y "RutaArchivo", a los cuales agregamos los valores relevantes.
5. Ahora, puedes llamar a la función BuscarArchivos desde cualquier parte de tu base de datos, pasándole como argumento la ruta del directorio que deseas buscar. Por ejemplo:
Ten en cuenta que el código anterior es solo un ejemplo básico y deberías adaptarlo a tus necesidades específicas. Además, debes asegurarte de que tu base de datos tenga permisos suficientes para acceder a los directorios que deseas buscar, especialmente si se trata de directorios en una red o en otra computadora.