En este grupo En todos

Foro de Excel



macro seleccionar varios archivos

martin
Buenos Aires, Argent...
Escrito por Martin Varela
el 08/11/2010

Hola a todos: uso una macro para importar y procesar archivos, varias decenas cada vez que la uso, y por medio de la misma, estos se guardan en un libro único en distintas hojas cuyo nombre coincide con el del archivo original. Tengo dos macros alternativas: una abre la ventana "Abrir" y allí uno selecciona el archivo, con la desventaja de tener que correr la macro cada vez por cada archivo a abrir; y en la otra, se escribe la lista de archivos a abrir en una columna y se abren todos de una, el problema es que suele ser engorroso tipear el nombre de cada archivo. Quisiera una macro que haga aparecer la ventana "Abrir" y allí uno pueda seleccionar múltiples archivos. Deseando haber sido claro y a la espera de sugerencias, los saludo y agradezco de antemano.

Abraham Valencia
Computacion e informatica microsoft mv...
Escrito por Abraham Valencia
el 08/11/2010

Quias si das mas detalles, seria mas facil ayudarte. ¿Que es exactamente lo que deseas hacer con cada archivo? ¿Estan todos en la misma carpeta? ¿Tienen las mismas caracteristicas?

Saludos

Abraham

Cacho Rodríguez
Ing. electrónica u.n.r.
Escrito por Cacho Rodríguez
el 09/11/2010

Hola! Martín. Una alternativa es mediante:

Application. Dialogs(xlDialogOpen). Show

que hará lo que necesitas.

Pero, ¡Claro! A partir de tener todos los archivos abiertos tendrás que saber seleccionar cada uno de ellos y procesarlos (y cerrarlos) según necesites.

Comenta tus impresiones, por favor.
Saludos, Cacho.

P.D.
Si lo anterior no te fuese suficiente, responde a lo que Abraham te pregunta para orientarnos mejor.

Martin Varela
Buenos Aires, Argent...
Escrito por Martin Varela
el 10/11/2010

Hola, la macro simplemente importa archivos de texto tomando de ellos solo una parte que me resulta necesaria, pego un ejemplo:

MiArchivo = Application. GetOpenFilename("Archivo de texto,*. Txt")
Workbooks. OpenText Filename:=miArchivo, Origin:= _
xlWindows, StartRow:=4, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False _
, Space:=True, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1)) _
, DecimalSeparator:=". ", ThousandsSeparator:=","
ActiveSheet. Move Before:=Workbooks("Prepara. Xls"). Sheets(1)
Sheets("Hoja1"). Select
Range("A1"). Select