Тёмный

Macro listar archivos de carpetas | RaduNordenhulk 

Raul Guerrero
Подписаться 4,4 тыс.
Просмотров 17 тыс.
50% 1

Excelente macro paso a paso para ver los archivos que contiene una carpeta determinada!
Suscríbete a mi canal: bit.ly/1KgurfF
Sigueme en Twitter / radunordenhulk
Agregame en Facebook: on. 1oFUXVL
Sigue mis publicaciones en mi blog: radunordenhulk....
El archivo lo podrás descargar en el siguiente link:
drive.google.c...

Опубликовано:

 

23 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 56   
@josefelguera1039
@josefelguera1039 4 года назад
Hola, ¿se podria hacer para que buscarta tambien los archivos contenidos dentro de las subcarpetas? Creo que ya lo han preguntado, pero no veo la respuesta
@tortugahispana
@tortugahispana Год назад
excelente me sirvió ! No sabía como seleccionar la carpeta.
@daanhear
@daanhear 7 лет назад
Hola, y si solo necesito los nombres de los subdirectorios que contienen la carpeta que se selecciona como se haría? :)
@luismhp1119
@luismhp1119 4 года назад
buen día, como le puedo hacer para quitarle seleccionar la carpeta y solo sea una sola
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Comente la línea Application.FileDialog(msoFileDialogFolderPicker).Show y a la variable D asigne la ruta donde buscará los archivos Ejemplo: 'Application.FileDialog(msoFileDialogFolderPicker).Show D = "C:\Test" 'Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1)
@mariotapia7564
@mariotapia7564 6 лет назад
¿Cuál sería el comando para eliminar la ruta completa del o los archivos, dejándolos son con la extensión? Gracias
@RaduNordenhulk
@RaduNordenhulk 6 лет назад
En la línea Range("a" & r).Value = D & "\" & a.Name cambiarlo por 'Con esto verás solo los archivos listados (sin la ruta) Range("a" & r).Value = a.Name Saludos y gracias por tus comentarios!
@nilfus
@nilfus 5 лет назад
Hola buenas tardes, será que podamos hacer esa macro limitando que solo muestre la ruta de un tipo de archivo es decir que en la carpeta solo me traiga la ruta de los archivos que sean por ejemplo .xml
@RaduNordenhulk
@RaduNordenhulk 3 года назад
Usted puede unirse a mi canal, tengo una excelente propuesta para mejorar sus habilidades: ru-vid.com/show-UCwnx_b0C6UGB0vnKOLMfGeAjoin
@IMAGG0
@IMAGG0 5 лет назад
Gracias amigo por el aporte. sin embargo e seguido paso a paso lo q tu haces pero simplemente no hace nada. me podrias ayudar con mi posible error. Seria util obtener la lista de los archivos pero sin la ruta o a su la ruta pero tambien el nombre del archivo. Gracias amigo
@RaduNordenhulk
@RaduNordenhulk 5 лет назад
Hola, para obtener la lista de archivos sin la ruta solo escribe Range("a" & r).Value = a.Name Para obtener solo la ruta seleccionada, según el código se guarda en la variable D Range("a" & r).Value = D Me puedes indicar el mensaje de error por favor? Saludos!
@IMAGG0
@IMAGG0 5 лет назад
@@RaduNordenhulk gracias amigo.
@aranmariga
@aranmariga 3 года назад
Excelente Macro. Me podía indicar la instrucción a añadir para que las subcarpetas aparecieran con sus archivos correspondientes. Gracias.
@RaduNordenhulk
@RaduNordenhulk 3 года назад
Usted puede unirse a mi canal, tengo una excelente propuesta para mejorar sus habilidades: ru-vid.com/show-UCwnx_b0C6UGB0vnKOLMfGeAjoin
@oswaldoserrano8500
@oswaldoserrano8500 8 лет назад
Excelente video, muchas gracias por el aporte. Crees que se pueda sacar caracteristicas de los archivos como fecha modificación, tamaño, etc?
@RaduNordenhulk
@RaduNordenhulk 8 лет назад
Hola, muchas gracias por tu comentario. Para obtener el tamaño del archivo y la fecha de modificación solo agrega el siguiente código: Range("b" & r).Value = FileLen(a) Range("c" & r).Value = FileDateTime(a) Esto lo escribes justo debajo del código que obtiene el nombre del archivo minuto 05:22 Saludos y seguimos en contacto.
@harlesp.7461
@harlesp.7461 3 года назад
Que funcion hace la a ?? dentro del for each ??
@RaduNordenhulk
@RaduNordenhulk 3 года назад
la variable "a" va tomando cada elemento del arreglo f.files... es decir si f.files tiene 4 archivos, el foreach asignará a la variable "a" el primer elemento de f.files, y después el segundo y así sucesivamente
@servicioscontablesjmg8491
@servicioscontablesjmg8491 6 лет назад
Buenas noches. Excelente lo de esta macros. Me funciona a la perfección. Ahora bien, junto a esta macros, necesito aplicar la formula BUSCARV dentro de la misma hoja pero buscando datos en otra hoja. Esa otra hoja necesito que esté en uno de los archivos, según los archivos listados con la macros de listar archivos. Por favor y muchas gracias.
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Gracias Jhonny, este curso gratuito en Udemy hasta el 31 de Diciembre 2019 le puede ser de utilidad! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-EXBDPg3Xk88.html&lc=
@GeorgeBrow678
@GeorgeBrow678 3 года назад
Excelente video. Saludos desde Colombia
@RaduNordenhulk
@RaduNordenhulk 3 года назад
Usted puede unirse a mi canal, tengo una excelente propuesta para mejorar sus habilidades: ru-vid.com/show-UCwnx_b0C6UGB0vnKOLMfGeAjoin
@uliseshernandez5247
@uliseshernandez5247 7 лет назад
Hola excelente macro gracias, como puedo incluir subcarpetas????
@gustavodiazbandres
@gustavodiazbandres 4 года назад
Muchas gracias!!! Lo intenté de diferentes maneras y no lograba. Gracias por compartir la macro, sólo así pude hacerlo fácilmente. Hay alguna manera de sólo copiar el nombre de archivo sin la dirección de ubicación?. Muy agradecido por tu ayuda!
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Hola, para obtener la lista de archivos sin la ruta solo escribe Range("a" & r).Value = a.Name Saldos!!! :)
@charlscharls5815
@charlscharls5815 2 года назад
Excelente!!
@Dadomotion
@Dadomotion 6 лет назад
Hola y muchas gracias, es justo lo que necesitaba, aun así me da error si cancelo en el cuadro de selección de directorio, como lo podría corregir, para que mostrara un mensaje como "No se ha seleccionado un directorio" en ver de este error: "Se ha producido error '5' en tiempo de ejecución..."
@RaduNordenhulk
@RaduNordenhulk 6 лет назад
Hola, claro que si.... Agrega esta linea abajo de "Application.FileDialog(msoFileDialogFolderPicker).Show" If Len(D) = 0 Then MsgBox "No se ha seleccionado ninguna carpeta": Exit Sub El código debería quedar así: Sub Lector() Hoja1.Select Range("A2:a1048576").ClearContents Dim D As String Application.FileDialog(msoFileDialogFolderPicker).Show 'Si no se selecciona ninguna carpeta entonces muestra mensaje y sale del programa... If Len(D) = 0 Then MsgBox "No se ha seleccionado ninguna carpeta": Exit Sub D = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) Set fs = CreateObject("Scripting.Filesystemobject") Set f = fs.getfolder(D) r = 2 For Each a In f.Files If Not Right(a.Name, 4) = ".ini" Then Range("a" & r).Value = D & "\" & a.Name r = r + 1 End If Next a End Sub
@Dadomotion
@Dadomotion 6 лет назад
No me funciona bien, me da el mensaje todo el rato, lo he solucionado (de manera cutre) con un "if" y un "else" y una nueva variable, igual no es la manera mas limpia, pero me funciona, dime si se puede repara lo que me has pasado, para que me funcione. Gracias :D Así lo he dejado :P Sub Lector() Hoja1.Select Range("A2:A1048576").ClearContents Dim D As String Dim E As String E = 0 Application.FileDialog(msoFileDialogFolderPicker).Show 'Si no se selecciona ninguna carpeta entonces muestra mensaje y sale del programa... 'If Len(D) = 0 Then MsgBox "No se ha seleccionado ninguna carpeta": Exit Sub On Error GoTo Fin D = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) Set fs = CreateObject("Scripting.Filesystemobject") Set f = fs.getfolder(D) r = 2 For Each a In f.Files If Not Right(a.Name, 4) = ".ini" Then Range("a" & r).Value = D & "\" & a.Name r = r + 1 End If Next a MsgBox "¡Directorio Actualizado!", vbInformation E = 1 Fin: If E = 0 Then MsgBox "Se canceló la actualización del directorio.", vbCritical Else End If End Sub
@Dadomotion
@Dadomotion 6 лет назад
Vale, creo que así está mejor: (¿Lo mejorarías?) Sub Lector() Hoja1.Select Range("A2:A1048576").ClearContents Dim D As String Application.FileDialog(msoFileDialogFolderPicker).Show 'Si no se selecciona ninguna carpeta entonces muestra mensaje y sale del programa... On Error GoTo Fin D = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) Set fs = CreateObject("Scripting.Filesystemobject") Set f = fs.getfolder(D) r = 2 For Each a In f.Files If Not Right(a.Name, 4) = ".ini" Then Range("a" & r).Value = D & "\" & a.Name r = r + 1 End If Next a MsgBox "¡Directorio Actualizado!", vbInformation Exit Sub Fin: MsgBox "No se ha seleccionado ninguna carpeta.", vbCritical End Sub
@RaduNordenhulk
@RaduNordenhulk 6 лет назад
Esa es otra manera, pero recuerda limpiar la variable "D", ya que en algunas ocasiones se queda el valor que corriste anteriormente.... Solo agregar D = "" después del MsgBox "No se ha seleccionado ninguna carpeta.", vbCritical + vbOkOnly También puedes agregar al tipo de mensaje vbCritical + vbOkOnly para que sea el único botón a presionar.... Saludos
@Dadomotion
@Dadomotion 6 лет назад
De acuerdo, muchas gracias.
@juanleano6718
@juanleano6718 5 лет назад
buenas muy pero muy bueno el video eso para organizar y hacer una lista de las carpetas esta buena pero si tu sabes como crear un archivador virtual me ayudarias un monton
@PaenquebeConsultor
@PaenquebeConsultor 4 года назад
Muy interesante, como se haria para solo pdfs mil gracias 🙏✍️
@RaduNordenhulk
@RaduNordenhulk 3 года назад
Usted puede unirse a mi canal, tengo una excelente propuesta para mejorar sus habilidades: ru-vid.com/show-UCwnx_b0C6UGB0vnKOLMfGeAjoin
@gabaro76
@gabaro76 6 лет назад
Gracias, es de mucha ayuda, me funciona y luego se traba y me marca un erro 1004 o un letrero con una x y un 400
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Gracias Gabyta, este curso gratuito en Udemy hasta el 31 de Diciembre 2019 le puede ser de utilidad! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-EXBDPg3Xk88.html&lc=
@SantiagoBarry
@SantiagoBarry 5 лет назад
EXCELENTE amigo que bueno!!!
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Gracias Santiago, este curso gratuito en Udemy hasta el 31 de Diciembre 2019 le puede ser de utilidad! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-EXBDPg3Xk88.html&lc=
@EMR800
@EMR800 7 лет назад
gracias por tu ayuda con este video
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Gracias Joreh, este curso gratuito en Udemy hasta el 31 de Diciembre 2019 le puede ser de utilidad! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-EXBDPg3Xk88.html&lc=
@martinmendozabenitez8977
@martinmendozabenitez8977 5 лет назад
buenisimo! gracias!
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Gracias Martín, este curso gratuito en Udemy hasta el 31 de Diciembre 2019 le puede ser de utilidad! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-EXBDPg3Xk88.html&lc=
@Hector_Fabio
@Hector_Fabio 5 лет назад
Excelente solución....
@RaduNordenhulk
@RaduNordenhulk 4 года назад
Gracias H[ector, este curso gratuito en Udemy hasta el 31 de Diciembre 2019 le puede ser de utilidad! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-EXBDPg3Xk88.html&lc=
@Cjclaudd
@Cjclaudd 6 лет назад
hola como puedo obtener la fecha de creacion?
@RaduNordenhulk
@RaduNordenhulk 6 лет назад
Hola, escribe Range("c" & r).Value = FileDateTime(a) Con esto deberías ver la fecha de creación del archivo! Saludos! Raúl Guerrero
@Cjclaudd
@Cjclaudd 6 лет назад
Raul que crack, esta es mi macros como debria incorporalo? Sub Listaindice() Dim Indice As String Dim i As Integer Dim listado As String Indice = path Sheets("indicereporte").Select Range("A2:A" & Cells(Rows.Count, 2).End(xlUp).Row) = "" i = 2 listado = Dir(Indice) Do While Len(listado) > 0 Sheets("indicereporte").Select Cells(i, 1) = listado listado = Dir() i = i + 1 Loop End Sub
@RaduNordenhulk
@RaduNordenhulk 6 лет назад
Agrega esta línea dentro de tu Do While Cells(i, 2) = FileDateTime(Mid(Indice, 1, Len(Indice) - 1) & listado)
@RaduNordenhulk
@RaduNordenhulk 6 лет назад
Queda así! Sub Listaindice() Dim Indice As String Dim i As Integer Dim listado As String Indice = "C:\Users\correcj\Ecolab\Workflow Account Payable - Documentos\Invoices\All\*pdf" Sheets("indicereporte").Select Range("A2:A" & Cells(Rows.Count, 2).End(xlUp).Row) = "" i = 2 listado = Dir(Indice) Do While Len(listado) > 0 Sheets("indicereporte").Select Cells(i, 1) = listado Cells(i, 2) = FileDateTime(Mid(Indice, 1, Len(Indice) - 1) & listado) listado = Dir() i = i + 1 Loop End Sub Saludos!!! Raúl Guerrero
@Cjclaudd
@Cjclaudd 6 лет назад
me salio error 52 nombre de archivo incorrecto
Далее
Visor de imagenes en Excel | RaduNordenhulk
8:38
Просмотров 4,5 тыс.
Generar lista de archivos de carpeta con macro excel
19:32
Crear un login - inicio de sesión  en Excel fácil
20:44
Tips y Trucos de Excel | Listar archivos en Excel
6:03
؟ Docker ليه بنستخدم 💙
18:52
Просмотров 77 тыс.
Programar es DIFÍCIL... (8 verdades duras)
14:27
Просмотров 541 тыс.