Generar una lista de archivos en Excel

martes, abril 24, 2007

En mi nota sobre como importar una lista de archivos a uno hoja de Excel vimos que podíamos usar las macrofunciones (funciones XLM) para realizar esta tarea.
Uno de mis lectores intentó crear una lista de un directorio que contiene 1600 archivos. El resultado fue que la macrofunción crea una lista de 256 archivos, y partir de allí recibimos #REF como resultado.
Mi sugerencia de usar TRANSPONER tampoco parece dar resultados, así que la solución es usar una macro (Vba) para crear la lista.
Una macro de este tipo fue publicada en el sitio Vbax con las correspondientes explicaciones.
Para los lectores que prefieren las explicaciones en español, procedemos de la siguiente manera:

1 – descargamos la macro en el enlace de arriba o popdirectlistaquí
2 – copiamos la macro a un módulo del editor de Vba (Herramientas—Macro—Editor VBa o Alt+F11)
3 – creamos una referencia al al Windows Script Host Object Model en el menú Herramientas—Referencias del editor de Vba




marcando la casilla al del Windows Script Host Object Model (antes de marcarla, los objetos aparecen en orden alfabético)



4 – Hacemos correr la macro con Herramientas—Macro—Ejecutar



Se abrirá una ventanilla donde elegimos el directorio/carpeta cuyos archivos queremos poner en la lista. La macro genera un nuevo cuaderno con la lista de los archivos y sus propiedades.



Technorati Tags:

5 comments:

Anónimo,  25 septiembre, 2008 06:12  

Excelente la macro señalada en tu blog, solo que tengo algunas dudas que espero puedas orientarme a solucionarlas: como solicitarle a la macro que solo muestre determinados tipos de archivos (ejemplo:.doc, .xls, etc)?, como ejecutar la macro desde el arranque de Excel y que me muestre el contenido de una carpeta en especifico?... Espero puedas orientarme, gracias de antemano.

Jorge L. Dunkelman 25 septiembre, 2008 16:50  

Tienes que modificar la propiedad FileType en la línea

.FileType = msoFileTypeAllFiles 'get all files


Las constantes posibles (tipos de archivo) son:
msoFileTypeAllFiles
msoFileTypeBinders
msoFileTypeCalendarItem
msoFileTypeContactItem
msoFileTypeCustom
msoFileTypeDatabases
msoFileTypeDataConnectionFiles
msoFileTypeDesignerFiles
msoFileTypeDocumentImagingFiles
msoFileTypeExcelWorkbooks
msoFileTypeJournalItem
msoFileTypeMailItem
msoFileTypeNoteItem
msoFileTypeOfficeFiles
msoFileTypeOutlookItems
msoFileTypePhotoDrawFiles
msoFileTypePowerPointPresentations
msoFileTypeProjectFiles
msoFileTypePublisherFiles
msoFileTypeTaskItem
msoFileTypeTemplates
msoFileTypeVisioFiles
msoFileTypeWebPages
msoFileTypeWordDocuments

Para que la macro se ejecute desde el arranque, tienes que programar un evento WorkBook_Open.

Edwin,  03 marzo, 2010 22:54  

Tengo office 2007, la macro me genera el siguiente error:

With Application.FileSearch
El objeto no admite esta accion.
Qué puede ser?
Muchas gracias.

Jorge L. Dunkelman 04 marzo, 2010 06:44  

La propiedad FileSearch ha sido eliminada en Excel 2007. Vaya uno a saber por que motivos!
Haciendo una búsqueda en la Internet podrás encontrar varias soluciones.

CristopherOS 19 julio, 2010 06:18  

muchas gracias, me sirvio de mucho, primero me costó entenderlo ya que esta muy cmplicado pero a intentos lo logré. Deberías hacer una versión en video para que se más encillo de comprender

Publicar un comentario

Google+ Followers

Seguidores

Google+ Badge

Términos Legales

  © Blogger template On The Road by Ourblogtemplates.com 2009

Back to TOP