Problema al cerrar archivos por bucle
Hola Elsa esperando que te encuentres bien, te quería molestar un poco a ver si me puedes ayudar.
Estoy realizando el siguiente programa el cual tiene que abrir varios archivos extraer una columna y pegarla en este archivo, pero mi problema es que no puedo cerrar el archivo que abre por el bucle, me sale un error. O sea no se como se llama el archivo, ya que pensaba que el archivo pasaba a llamarse "ruta", pero no me resulta.
Este es el código:
Public Sub Ejemplo()
Dim objFSO As FileSystemObject, objFolder As Folder
Dim objFile As File, ruta As String
Set objFSO = New FileSystemObject
With Application.FileSearch
.LookIn = "C:\Pictogramas\" 'carpeta donde estan los archivos a abrir
.FileType = msoFileTypeExcelWorkbooks ' Abre solo archivos excel
.SearchSubFolders = True 'Ver en subcarpetas
.Execute
For i = 1 To .FoundFiles.Count
Set objFile = objFSO.GetFile(.FoundFiles(i))
ruta = objFile.Path
Workbooks.Open Filename:=ruta 'Se supone que ruta es la direccion del archivo
Range("O2:O421").Copy
Workbooks("buscador pictogramas3.xls").Activate 'Libro en el cual pego las columnas
Sheets(3).Select
Range("C6").Select
Selection.PasteSpecial Paste:=xlPasteValues
With Application.Workbooks(ruta) 'Aqui esta mi error no se como llamar al archivo
.RunAutoMacros xlAutoClose
.Close SaveChanges:=False
End With
Next i
End With
End Sub
Ojala me puedas ayudar a ver que estoy haciendo mal.
Estoy realizando el siguiente programa el cual tiene que abrir varios archivos extraer una columna y pegarla en este archivo, pero mi problema es que no puedo cerrar el archivo que abre por el bucle, me sale un error. O sea no se como se llama el archivo, ya que pensaba que el archivo pasaba a llamarse "ruta", pero no me resulta.
Este es el código:
Public Sub Ejemplo()
Dim objFSO As FileSystemObject, objFolder As Folder
Dim objFile As File, ruta As String
Set objFSO = New FileSystemObject
With Application.FileSearch
.LookIn = "C:\Pictogramas\" 'carpeta donde estan los archivos a abrir
.FileType = msoFileTypeExcelWorkbooks ' Abre solo archivos excel
.SearchSubFolders = True 'Ver en subcarpetas
.Execute
For i = 1 To .FoundFiles.Count
Set objFile = objFSO.GetFile(.FoundFiles(i))
ruta = objFile.Path
Workbooks.Open Filename:=ruta 'Se supone que ruta es la direccion del archivo
Range("O2:O421").Copy
Workbooks("buscador pictogramas3.xls").Activate 'Libro en el cual pego las columnas
Sheets(3).Select
Range("C6").Select
Selection.PasteSpecial Paste:=xlPasteValues
With Application.Workbooks(ruta) 'Aqui esta mi error no se como llamar al archivo
.RunAutoMacros xlAutoClose
.Close SaveChanges:=False
End With
Next i
End With
End Sub
Ojala me puedas ayudar a ver que estoy haciendo mal.
1 Respuesta
Respuesta de Elsa Matilde
1