¿Probaste con el archivo que te envié?
Sí, deja la parte comentada.
Te anexo la macro con las variables declaradas
Sub Unir_Archivos()
'---
' Por.Dante Amor
'---
Dim l1, h1, nom, ruta, fila, arch, dato, l2, h2, u2, u1
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set l1 = ThisWorkbook
Set h1 = l1.Sheets(1)
h1.Range("A2:I" & h1.Rows.Count).Clear
nom = l1.Name
ruta = l1.Path & "\"
fila = 2
'
arch = Dir(ruta & "*.xls*")
Do While arch <> ""
dato = Left(arch, InStrRev(arch, ".") - 1)
If arch <> nom Then
Set l2 = Workbooks.Open(ruta & arch)
Set h2 = l2.Sheets(2)
u2 = h2.Range("B" & h2.Rows.Count).End(xlUp).Row
h2.Range("B2:I" & u2).Copy h1.Range("A" & fila)
u1 = h1.Range("B" & h2.Rows.Count).End(xlUp).Row
h1.Range(h1.Cells(fila, "I"), h1.Cells(u1, "I")) = dato
fila = u1 + 1
l2.Close False
End If
arch = Dir()
Loop
Application.ScreenUpdating = True
MsgBox "Archivos unidos", vbInformation, "UNIR ARCHIVO"
End Sub
Si te aparece un error, dime qué dice el mensaje y en qué línea de la macro se detiene.
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias