¿Cómo puedo hacer para que se ejecute la macro?

En esta macro no se ejecutan las acciones Range.. Hasta loop.

Pasa de ehecutar la instrucción Do While (Archivos <> "") a end Sub y no se cómo hacer para que ejecute las acciones que hay en medio.

¿Podríais ayudarme?

Sub Archivos()
Dim Archivos As String
Archivos = Dir("C:\MACROSEGTEMES\*.xlsx")
Do While (Archivos <> "")

Range("A1:AZ1").Select
Selection.AutoFilter
Columns("C:AW").Select
Selection.EntireColumn.Hidden = True
Columns("AY:AZ").Select
Selection.EntireColumn.Hidden = True

Archivos = Dir
Loop

End Sub

1 Respuesta

Respuesta
2

Tu macro trabaja con libros ya abiertos... solo te falta seleccionarlos indicando además en qué hoja se trabajará. En mi ejemplo asumo que es la hoja 1 ... puedes indicar el nombre en esa instrucción.

Sub Archivos()
Dim Archivos As String
Archivos = Dir("C:\MACROSEGTEMES\*.xlsx")
Do While (Archivos <> "")
'activar el libro y hoja a trabajar
Set wb = Workbooks(Archivos)
wb.Sheets(1).Activate         'ajustar nbre o nro de hoja
'
Range("A1:AZ1").Select
' el resto de tus instrucciones
Archivos = Dir
Loop
End Sub

Si en cambio necesitas abrir los libros, eso ya requiere de una macro diferente. Para eso inicia una nueva consulta indicando en el título que se requiere 'abrir' libros desde una cierta ruta. 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas