Macro en muchos archivos

Hola. Genere una macro en excel 2007 para un archivo
Sub Macro6()
......................... (macro)
End Sub
Pero no quiero tener que abrir archivo por archivo a mano y ejecutar la macro uno por uno (son más de 900 archivos, por eso). Quiero que la macro se ejecute sola en TODOS los archivos que están dentro de ESTA CARPETA: D:\DATOS TESIS BRUTO
Por favor, explicar cómo puedo hacer esto. Gracias.

1 Respuesta

Respuesta
1
Private Sub Listar_abrir_y_cerrar()
'Ir a menu Herramientas, Referencias
' Y agregar:
'Microsoft Scrpting Runtime
'
    Dim hFolder As Folder
    Dim hFile As File
    Dim Fso As FileSystemObject
    Dim Folder As String
    Dim LibroPpal As String
    'El libro principal,
'es decir, el que contendrá esta macro,
'debe estar en la misma carpeta donde están
'los libros que se deben abrir.
    Folder = "D:\xls"
    LibroPpal = ActiveWorkbook.Name
    Set Fso = New FileSystemObject
    Set hFolder = Fso.GetFolder(Folder)
    For Each hFile In hFolder.Files
        'ABRE ARCHIVO:
        Workbooks.Open Filename:=Folder & "\" & hFile.Name
        'para activar libro abierto
        Windows(hFile. Name). Activate
        '.
        '.
        '. TU CÓDIGO AQUÍ, o llamar tu macro con:
        '. Application. Run "Tumacro"
        '.
        '.
        'activar el libro abierto:
        Windows(hFile. Name). Activate
        'False/True es para cerrar sin/con cambios:
        ActiveWorkbook.Close False
        'PARA ACTIVAR LIBRO PRINCIPAL:
        Windows(LibroPpal).Activate
    Next hFile
    Set Fso = Nothing
    Set hFile = Nothing
    Set hFolder = Nothing
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas