Sie sind auf Seite 1von 3

Macro para importar nombres de archivos a Excel

inShar e3

Alguna vez has tenido la necesidad de importar los nombres de archivos de una carpeta a Excel? No me refiero al contenido de los archivos, sino a una lista con los nombres de los archivos que estn ubicados en alguna carpeta del equipo. Aunque existen varios mtodos para lograr este objetivo, en esta ocasin te mostrar como hacer una macro para realizar esta tarea en Excel.

Macro para importar nombres de archivo a Excel


A continuacin puedes ver el cdigo de la macro que explicar a detalle a lo largo de este artculo.

El cdigo de la macro lo he colocado dentro de un mdulo y he llamado a la subrutina Contenido_Carpeta.

Definicin de variables en macro


En la seccin 1 del cdigo tenemos dos lneas donde definimos las variables que utilizaremos en la macro.

carpeta: almacena la ruta de la carpeta que deseamos consultar para obtener los nombres de archivos. archivos: contendr el nombre archivo. contador: nos ayudar a avanzar la fila de la celda activa donde colocaremos el nombre del archivo.

Solicitar la ruta de la carpeta


La seccin 2 del cdigo hace uso de la funcin InputBox que nos ayuda a mostrar un cuadro de dilogo al usuario de manera que pueda proporcionar la ruta de la carpeta de la cual importaremos los nombres de los archivos contenidos. Despus de pedir la ruta de la carpeta hacemos una validacin del contenido de la variable carpeta. Si no se ha proporcionado la ruta, es decir si la variable carpeta est vaca, saldremos por completo de la subrutina con la instruccin Exit Sub. Por el contrario, si se ha proporcionado la ruta solamente debemos validar que la cadena de texto termine con una diagonal inversa y para ello utilizamos la funcin Right que obtiene el ltimo carcter de la cadena. En caso de que la variable carpetano termine con una diagonal invertida simplemente la concatenaremos.

Preparacin de las variables


En la seccin 3 inicializamos la variable contador que nos ayudar a avanzar a la siguiente fila de nuestra hoja conforme vayamos encontrando nuevos nombres de archivo. Le damos el valor inicial 1 para indicar que iniciaremos en la primera fila. Finalmente hacemos una primera lectura de la carpeta definida por el usuario utilizando la funcin Dir la cual nos devuelve el nombre del primero de los archivos contenidos en la carpeta.

Recorrido por la carpeta


Ya con el primer nombre de archivo en la variable archivos haremos un recorrido por la carpeta pata obtener todos los dems nombres y nos detendremos cuando la variables archivos est vaca lo cual indicar que ya no hay ms archivos. Es por esta razn que el bucle Do While tiene la condicin Len(archivos) > 0 porque estamos validando que la longitud de la variablearchivos sea mayor a cero. Una vez dentro del bucle hacemos que el valor de la celda seleccionada sea igual al nombre del archivo contenido en la variable archivos. Despus volvemos a llamar a la funcin Dir para leer el siguiente nombre de archivo. En esta ocasin ya no proporcionamos la ruta como argumento porque la funcin Dir toma de manera predeterminada la ruta definida previamente. Por ltimo aumentamos el valor del contador para poder avanzar de fila en caso de encontrar otro nombre de archivo.

Demostracin de la macro
Finalmente mostrar cmo funciona esta macro. En la parte superior puedes observar el contenido de la carpeta C:Temp la cual leer con la macro recin creada para enlistar sus archivos en la hoja de Excel.

Puedes descargar el libro de trabajo de Excel que contiene la macro para poder realizar pruebas. Recuerda utilizar estamacro para importar nombres de archivos a Excel ubicados en alguna carpeta de tu equipo. Artculos relacionados Introduccin a las macros en Excel

Das könnte Ihnen auch gefallen