H o l a : Te anexo la macro para obtener los valores de las celdas A1, A2 y A3, de la hoja "resumen" de todos los libros.
Es importante que todos los libros tenga la hoja "resumen"; si algún libro no tiene una hoja llamada "resumen" la macro te solicitará la hoja que deseas incluir, puedes seleccionar una hoja, o bien, presionar "cancelar" para que la macro continúe.
Copia la macro en tu libro "cuadre" y crea una hoja llamada "Totales". Guardar tu archivo cuadre en cualquier carpeta diferente a la carpeta donde tienes tus 600 libros.
Modifica en la macro la ruta, por la carpeta donde tienes tus 600 libros.
Sub Cuadre()
'Por.Dante Amor
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'
ruta = "C:\trabajo\carpeta\" 'Poner el nombre de la carpeta con los 600 libros
hoja = "Totales" 'Nombre de la hoja donde se acumularán los totales
'
arch = Dir(ruta & "*.xls*")
j = 2
Set h = Sheets(hoja)
h.Cells.ClearContents
On Error Resume Next
Do While arch <> ""
h.Cells(1, j).Value = arch
h.Cells(2, j).Formula = "=IFERROR('" & ruta & "[" & arch & "]resumen'!A1,""No existe la hoja"")"
h.Cells(2, j).Value = h.Cells(2, j).Value
h.Cells(3, j).Formula = "=IFERROR('" & ruta & "[" & arch & "]resumen'!A2,""No existe la hoja"")"
h.Cells(3, j).Value = h.Cells(3, j).Value
h.Cells(4, j).Formula = "=IFERROR('" & ruta & "[" & arch & "]resumen'!A3,""No existe la hoja"")"
h.Cells(4, j).Value = h.Cells(4, j).Value
j = j + 1
arch = Dir()
Loop
Application.ScreenUpdating = True
MsgBox "fin"
End Sub
Nota: La macro trabaja sin tener que abrir los 600 archivos, pero si tienes demasiados libros sin la hoja "resumen", entonces tendría que cambiar la macro para validar si el libro tiene la hoja "resumen" para tomar las celdas, en este caso, es necesario abrir cada uno de los 600 libros y verificar hoja por hoja si existe la hoja "resumen", esto tomaría más tiempo.
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias