양식-명령버튼 하나 추가하시고 아래 매크로를 연결
Sub 데이터합치기()
Dim Files As Variant
Dim fileX As Variant
Dim sht As Worksheet
Dim wb As Workbook
Dim rngTarget As Range
Files = Application.GetOpenFilename(filefilter:="Excel Files(*.csv),*.csv", Title:="파일선택", MultiSelect:=True) '여러개 파일이 선택가능하도록 multiselect속성을 '참'으로 한다
Set sht = Worksheets("정리") ' "정리" 시트로 가져오기 위함
For Each fileX In Files
Set wb = Workbooks.Open(fileX)
Set rngTarget = sht.Range("a65536").End(xlUp).Offset(1, 0)
wb.Worksheets(1).UsedRange.Copy rngTarget '선택한 개별파일들의 usedrange를 복사해서 타겟 시트인 '정리'시트에 붙인다
Application.CutCopyMode = False
wb.Close savechanges:=False
Next fileX
End Sub
[출처] 엑셀파일의 내용 합치기|작성자 민우아빠