Macro que liste nombres de archivo por periodos específicos.
Ando atorado y espero que ustedes me puedan apoyar, verán, tengo una carpeta con 'n' cantidad de archivos, para esto hice una macro que me liste los nombres de los archivos .xml y .pdf para verificar contra otros datos... El problema es que la cantidad de datos es enorme... Lo que quiero es que este código únicamente aplique al periodo que yo determine, en este caso, Febrero.
Cabe resaltar que no puedo hacer subcarpetas, tengo que tomar la información de ese gran total de archivos y listarlos... Espero haberme explicado.
Anexo mi código.
Sub LasCarpetas() ' With Application .ScreenUpdating = False .DisplayAlerts = False .EnableEvents = False End With ' Dim NombreCarpeta As String ' NombreCarpeta = "Y:\" ' Call ShowFolderList(NombreCarpeta) ' With Application .ScreenUpdating = True .DisplayAlerts = True .EnableEvents = True End With ' End Sub Sub ShowFolderList(LaCarpeta As String) ' With Application .ScreenUpdating = False .DisplayAlerts = False .EnableEvents = False End With ' Dim NombreSubCarpeta As String Dim lectura As String Dim ultimo As Integer Dim rango1, rango2 As String Dim yo As Workbook Dim hoja As Worksheet ' Set yo = Workbooks("Lector") Set hoja = Sheets("hoja1") ' Set FileSys = CreateObject("Scripting.FileSystemObject") Set Folder = FileSys.GetFolder(LaCarpeta) ' Asigna la carpeta a la variable Folder Set ListaCarpetas = Folder.Subfolders ' Asigna la lista de Subcarpetas a la variable ListaCarpetas Set ListadoArchivos = Folder.Files ' Asigna la lista de Archivos a la variable ListadoArchivos ' For Each Archivo In ListadoArchivos If InStr(1, Archivo.Name, ".xml", vbTextCompare) Then lectura = Archivo.Name yo.Activate End If ' ultimo = Cells(Rows.Count, 1).End(xlUp).Row rango1 = "A" & ultimo + 1 ' Range(rango1).Value = lectura ' Next Archivo ' For Each Archivo In ListadoArchivos If InStr(1, Archivo.Name, ".pdf", vbTextCompare) Then lectura = Archivo.Name yo.Activate End If ' ultimo = Cells(Rows.Count, 5).End(xlUp).Row rango1 = "A" & ultimo + 1 ' Range(rango1).Value = lectura ' Next Archivo ' MsgBox "Se ha validado la información de las facturas y xml", vbOKOnly, "Lector de archivos" ' With Application .ScreenUpdating = True .DisplayAlerts = True .EnableEvents = True End With ' End Sub
Respuesta de Dante Amor
1