나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 dew (dewdrop)

추천:  2
파일:     조회:  1724
제목:   [RE]여러파일 한시트로 통합 vba 오류
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(95,97,2000,xp,2003,2007): 엑셀 2003

* 아래줄에 질문을 작성하세요 >>
여러개의 파일의 특정셀값을 한파일에 복사해서 붙여넣고 싶어서
시중의 vba책을 보고 코드를 수정해보았는데요.

실행하면 복사영역과 붙여넣을 영역의 크기가 달라서 붙여넣을수 없다는 오류가 뜹니다ㅜ

제가 작성한 코드는 아래와 같습니다 pastespecial부분에서 계속 오류가 나네요ㅜ

머가 잘못됐는지 알수가 없네요 ㅜ 고수님들 알려주시면 감사하겠습니다ㅜㅜ

%원본데이터 파일은 회사데이터라 올릴 수가 없어서 이렇게 코드만 올려서 질문하는 점 양해 바랍니다 ㅜㅜ


Sub 취합()
Dim 파일수 As Variant
Dim 반복회수 As Integer
Dim 통합파일 As Workbook
Dim 현재파일 As Worksheet
Dim 행번호 As Integer
Set 현재파일 = ThisWorkbook.Worksheets(1)
파일수 = Application.GetOpenFilename(filefilter:="엑셀파일(*.xls*),*.xls*", MultiSelect:=True)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For 반복횟수 = 1 To UBound(파일수)
Set 통합파일 = Workbooks.Open(Filename:=파일수(반복횟수), ReadOnly:=True)
행번호 = 현재파일.Range("A3").CurrentRegion.Rows.Count + 3
    통합파일.Sheets(26).Range(("E32")).Copy
    현재파일.Cells(행번호, 1).PasteSpecial
    통합파일.Close
Next 반복횟수
Application.screenupdation = True
Application.displayalersts = True
MsgBox "파일 취합이 완료되었습니다"
Exit Sub

End Sub
==============[단비님 글에 대한 답변입니다]==============

Sub 취합()
    Dim 파일수 As Variant
    Dim 반복횟수 As Integer
    Dim 통합파일 As Workbook
    Dim 현재파일 As Worksheet
    Dim 행번호 As Integer
 
 
    Set 현재파일 = ThisWorkbook.Worksheets(1)
    파일수 = Application.GetOpenFilename(filefilter:="엑셀파일(*.xls*),*.xls*", MultiSelect:=True)
    
    With Application
        .ScreenUpdating = False
        .DisplayAlerts = False
        .EnableEvents = False
    End With
    
    For 반복횟수 = 1 To UBound(파일수)
        Set 통합파일 = Workbooks.Open(Filename:=파일수(반복횟수), ReadOnly:=True)
        행번호 = 현재파일.Cells(Rows.Count, 1).End(xlUp).Offset(3)
        
        통합파일.Sheets(26).Range("E32").Copy
        현재파일.Cells(행번호, 1).PasteSpecial Paste:=xlPasteValues
        통합파일.Close
    Next 반복횟수
    
    With Application
        .ScreenUpdating = True
        .DisplayAlerts = True
        .EnableEvents = True
    End With
    MsgBox "파일 취합이 완료되었습니다"
End Sub
 
[불량 게시물 신고]  
단비답변해주셔서 감사합니다 그런데 올려주신 코드대로 해보니  현재파일.Cells(행번호, 1).PasteSpecial Paste:=xlPasteValues 이부분에서 디버깅(?) 에러가 나네요 ㅜㅜ
02-08 (18:47)
삭제 ■신고
        
  

작성일 : 2019-02-07(10:10)
최종수정일 : 2019-02-07(10:10)
 


 ◎ 관련글

  제 목   작성자   날짜
여러파일 한시트로 통합 vba 오류 단비 2019-02-06
[RE]여러파일 한시트로 통합 vba 오류 dew 2019-02-07