VBA 복사(범위를 다른 시트로 복사하기)
In this Article
이 튜토리얼에서는 VBA를 사용하여 셀 범위를 다른 시트 또는 다른 통합 문서로 복사하는 방법을 설명합니다.
자세한 내용은 VBA 복사 및 붙여넣기 튜토리얼을 참조하세요.
기존 시트에 복사하기
한 시트에서 이미 존재하는 다른 시트로 셀 범위를 복사하려면 다음 코드를 사용할 수 있습니다:
Sub CopyAndPaste()
ActiveSheet.Range("A1:D10").Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Paste
End Sub
이렇게 하면 활성 시트 범위 A1:D10에 저장된 정보가 복사되어 기존 Sheet2에 붙여 넣습니다. Sheet2에서 선택할 범위를 지정하지 않았으므로 자동으로 범위(“A1”)에 붙여넣습니다. 또한 Sheet1의 범위에 있던 모든 서식을 Sheet2에 붙여넣습니다.
Sheet2의 다른 위치에 붙여넣으려면 붙여넣을 시작 셀을 선택하거나 범위를 선택할 수 있습니다. 아래 코드는 E2 셀에 데이터를 붙여넣습니다.
Sub CopyAndPasteToRange()
ActiveSheet.Range("A1:D10").Select
Selection.Copy
Sheets("Sheet2").Select
Range("E1").Select
ActiveSheet.Paste
End Sub
서식을 포함하지 않고 Sheet2에 값만 붙여넣으려면 다음 코드를 사용해야합니다. A1 셀에 붙여넣으려는 경우 붙여넣을 범위나 셀을 지정할 필요가 없습니다.
Sub CopyAndPasteValues()
ActiveSheet.Range("A1:D10").Select
Selection.Copy
Sheets("Sheet2").Select
Selection.PasteSpecial Paste:=xlPasteValues
End Sub
새로운 시트에 복사하기
데이터를 복사한 다음 새로운 시트에 붙여넣으려면 다음 코드를 사용할 수 있습니다:
Sub CopyAndPasteNewSheet()
ActiveSheet.Range("A1:D10").Select
Selection.Copy
Sheets.Add After:=ActiveSheet
ActiveSheet.Paste
End Sub
값만 복사하려면 xlPasteValues를 사용할 수 있습니다.
기존 통합문서에 복사하기
복사한 값을 다른 통합 문서에 붙여넣으려면 두 통합 문서가 이미 열려 있거나 코드를 사용하여 다른 통합 문서를 열고난 다음에 해당 통합 문서에 붙여넣을 수 있습니다.
아래 코드는 데이터를 열려 있는 기존 통합 문서에 복사합니다.
Sub CopyAndPasteExistingBook()
Range("A1:D10").Select
Selection.Copy
Windows("CombinedBranches.xlsx").Activate
Sheets.Add After:=ActiveSheet
ActiveSheet.Paste
End Sub
아래 코드는 현재 통합문서에서 데이터를 복사한 뒤 두 번째 통합문서를 열고 새로운 시트를 만들어서 데이터를 붙여넣습니다.
Sub CopyAndPasteOpenWorkbook()
Range("A1:D9").Select
Selection.Copy
Workbooks.Open Filename:= "C:\ExcelFiles\CombinedBranches.xlsx"
Sheets.Add After:=ActiveSheet
ActiveSheet.Paste
End Sub
팁: 위 코드를 정상적으로 실행하려면 Workbooks.Open 인수에 있는 경로가 포함된 파일이름을 예제 코드에 사용할 실제 파일 이름으로 바꾸세요!
새 통합 문서로 복사
새 통합 문서에 복사하여 붙여넣을 수도 있습니다.
Sub CopyAndPasteNewWorkbook()
Range("A1:D9").Select
Selection.Copy
Workbooks.Add
ActiveSheet.Paste
End Sub