Excel 통합 문서간에 데이터를 이동하거나 복사하는 매크로
이 기사에서는 VBA를 사용하여 Microsoft Excel의 스프레드 시트간에 데이터 를 복사하거나 전송 하는 방법을 설명합니다. 이 예제에서는 추가 쿼리를 사용하여 데이터를 결합하는 방법을 알려줍니다. 이러한 작업 조합을 통해 기존 워크 시트의 데이터를 결합하여보다 쉽게 분석 할 수 있습니다.
Excel에서 데이터를 이동하거나 복사하는 매크로
하나의 통합 문서에서 데이터를 복사 한 다음 다른 통합 문서로 내용을 수정해야하는 경우를 생각해 봅시다. 이 예제에서 통합 문서 1 (원본 통합 문서)에는 1 2 3 4 5가 있고 통합 문서 2에는 6 7 8 9 0이 있습니다.매크로를 실행 한 후 통합 문서 2에는 6 7 8 9 0 1 2 3 4 5 가 있어야합니다. 두 통합 문서의 형식은 동일합니다.
여기에 데이터를 전송하고 추가 할 수있는 매크로가 있습니다. (코드의 NOTE 를 읽었는지 확인하십시오) :
Sub CopyData ()문자열로 sBook_t을 어둡게합니다.
문자열로 sBook_s을 어둡게합니다.
sSheet_t 문자열을 어둡게합니다.
문자열로서 sSheet_s를 희미하게합니다.
어둡게 lMaxRows_t Long
희미한 lMaxRows_s 오래됨
문자열로 dim sMaxCol_s
Dim sRange_t As String
String으로 희미한 sRange_s
sBook_t = "대상 데이터 WB- 데이터를 WB.xls로 복사"
sBook_s = "원본 데이터 WB - WB.xls로 데이터 복사"
sSheet_t = "대상 WB"
sSheet_s = "소스"
lMaxRows_t = 통합 문서 (sBook_t). 시트 (sSheet_t). 셀 (행 수, "A"). 종료 (xlUp). 로우
lMaxRows_s = 통합 문서 (sBook_s). 시트 (sSheet_s). 셀 (행. 개수, "A"). 종료 (xlUp). 로우
sMaxCol_s = 통합 문서 (sBook_s). 시트 (sSheet_s). 셀 (1, Columns.Count). 끝 (xlToLeft) .Address
sMaxCol_s = 중간 (sMaxCol_s, 2, InStr (2, sMaxCol_s, "$") - 2)
If (lMaxRows_t = 1) Then
sRange_t = "A1 :"& sMaxCol_s & lMaxRows_s
sRange_s = "A1 :"& sMaxCol_s & lMaxRows_s
통합 문서 (sBook_t). 시트 (sSheet_t). 범위 (sRange_t) = 통합 문서 (sBook_s). 시트 (sSheet_s). 범위 (sRange_s). 값
그밖에
sRange_t = "A"& (lMaxRows_t + 1) & ":"& sMaxCol_s & (lMaxRows_t + lMaxRows_s - 1)
sRange_s = "A2 :"& sMaxCol_s & lMaxRows_s
통합 문서 (sBook_t). 시트 (sSheet_t). 범위 (sRange_t) = 통합 문서 (sBook_s). 시트 (sSheet_s). 범위 (sRange_s). 값
' ###################### 노트 #################
'다음 행은 일련 번호를 사용하여 복사하는 대신 수정해야합니다
'필요없는 경우 아래 줄을 삭제하십시오.
통합 문서 (sBook_t). 시트 (sSheet_t). 범위 ( "A"& lMaxRows_t). 자동 완성 대상 : = 통합 문서 (sBook_t). 시트 (sSheet_t). 범위 ( "A"& lMaxRows_t & ": A"& (lMaxRows_t + lMaxRows_s - 1)), 유형 : = xlFillSeries
끝면
End Sub