Copiar lista de archivos en hoja de Excel

Buenos días/tardes/noches.

Tengo un UserForm1, un ComboBox1 y un Modulo1.

La idea es cargar en el ComboBox1 el listado de todos los archivo que hay en un directorio de mi pendrive, por ejemplo este:

F:\Calvar-Vb6\1\

Que debo hacer?

Gracias y saludos desde Venezuela.

Respuesta
1

buenas noches luis.

cuando trato de abrir el link me dice que no tengo acceso a ella.

podrías enviarme el codigo?

solo quiero ver lo que tengo archivado en el directorio, no abrir los archivos.

saludos y gracias de antemano

Sub abrir()
Dim midir As String
ChDir "c:\"
midir = InputBox("Path de archivos", "Abrir Libros", "c:\prueba\")
If Len(Trim(midir)) = 0 Then Exit Sub
ChDir midir
'4c7569735f50
Workbooks.Open midir & Dir(midir, vbArchive)
Do Until Err.Number <> 0
On Error Resume Next
Workbooks.Open midir & Dir
DoEvents
Loop
MsgBox "Terminado", vbInformation
End Sub

Excelente!!

Muchísimas gracias, el codigo que me enviaste abre todos los archivos del directorio que se indique. Me viene de perlas para otra parte de la hoja de calculo que armate en un futuro cercano.

Ahora bien, como modifico la instruccion

Workbooks.Open midir & Dir(midir, vbArchive)

para "listar" en el combobox, los archivos que hay en el directorio?

Saludos.

Combo1. Additems Dir(midir, vbArchive)

Gracias!!

La linea que me enviaste me bota a una pantalla que dice "Run-time '424', Object required", la cambie por:

ComboBox1.additems Dir(midir, vbArchive)

Y da el mismo error.

Que estoy haciendo mal?

Saludos

Si tienes un formulario y en el un combo lo que te conviene es hacer la llamada a la bus abrir desde el evento initialize del form

Private Sub UserForm_Initialize()
abrir ' llamada al sub que carga el combo
End Sub

Sub abrir()
Dim midir As String
ChDir "c:\"
midir = "c:\prueba\" ' debes cambiar el path a la carpeta de tu interes
If Len(Trim(midir)) = 0 Then Exit Sub
ChDir midir
'4c7569735f50
UserForm1.ComboBox1.AddItem Dir(midir, vbArchive) ' pasamos el dato al combo
Do Until Err.Number <> 0
On Error Resume Next
UserForm1.ComboBox1.AddItem (midir & Dir) ' pasamos el resto de datos al combo
DoEvents
Loop
MsgBox "Terminado", vbInformation
End Sub

1 respuesta más de otro experto

Respuesta
1

Puedes revisar esta respuesta para usar el archivo y ver como te puede servir.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas