Ya te he enviado por mail la solución y esta sería la macro para aglutinar todos los csv que tengamos en un directorio cualquiera:
(El archivo excel que contenga esta macro deberá estar grabado en la misma carpeta que los csv. Después solo hay que ejecutar la macro y listo)
Sub ejemplo()
'por luismondelo
On Error GoTo salida
Control = 1
Application.DisplayAlerts = False
destino = ActiveWorkbook.Name
ruta = ActiveWorkbook.Path
ChDir ruta & "\"
archi = Dir("*.csv")
Do While archi <> ""
Workbooks.Open archi
origen = ActiveWorkbook.Name
If Control = 1 Then
Range("a1:g" & Range("a65000").End(xlUp).Row).Copy
Workbooks(destino).Activate
Range("a1").PasteSpecial Paste:=xlValues
Workbooks(origen).Close False
Control = 2
Else
Range("a2:g" & Range("a65000").End(xlUp).Row).Copy
Workbooks(destino).Activate
Range("a65000").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues
Workbooks(origen).Close False
End If
archi = Dir()
Loop
Range("a1").Select
Exit Sub
salida:
MsgBox "ha ocurrido un error, revise los datos y el directorio y vuelva a intentarlo"
End Sub
no olvides finalizar la consulta
El código funciona genial. Tuve que ampliar el rango porque tenía más de 300 mil datos combinados en todos los .csv, pero fue fácil de ajustar. Muchas gracias!! - Benjamin Ardila
No consigo que funcione. No hace nada. - Emi Egurcegui