본문 바로가기

IT/각종컴퓨터팁

엑셀파일의 내용 합치기

728x90
반응형

양식-명령버튼 하나 추가하시고 아래 매크로를 연결


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

[출처] 엑셀파일의 내용 합치기|작성자 민우아빠

728x90
반응형