VBA – 매크로에서 잘라내기, 복사하기, 붙여넣기

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Younjung Kim

Last updated on 4월 7, 2023

이 튜토리얼에서는 VBA 매크로를 사용하여 복사하여 붙여넣기 및 잘라내고 붙여넣기를 수행하는 여러 가지 방법을 배웁니다. 고급 복사 및 붙여넣기 옵션에 대한 자세한 내용은 값 붙여넣기 및 선택하여 붙여넣기에 대한 튜토리얼을 읽어보세요.

이 코드를 사용하려면 다음과 같이 하세요: Visual Basic 편집기(Alt + F11)를 열고 새 모듈을 삽입(삽입 > 모듈)한 다음 원하는 코드를 복사하여 모듈에 붙여넣습니다.

단일 셀 복사(잘라내기) 및 붙여넣기

이 예는 A1이라는 단일 셀을 복사하거나 잘라내어 B1에 붙여넣는 예제입니다:

Sub Paste_OneCell()

    '단일 셀을 복사해서 붙여넣기
    Range("A1").Copy Range("B1")

    '단일 셀을 잘라내기 후 붙여넣기
    Range("A1").Cut Range("B1")

End Sub

간편한 VBA 코딩

더 이상 온라인에서 VBA 코드를 검색하지 않으셔도 됩니다. 초보자도 최소한의 코딩 지식으로 프로시저를 처음부터 코딩할 수 있고 모든 사용자를 위한 다양한 시간 절약 기능을 갖춘 VBA 코드 빌더인 AutoMacro에 대해 자세히 알아보세요!

alt text

 

자세히 알아보기!

선택 영역 복사하기

활성 선택 영역을 복사하려면 이것을 사용하십시오:

Sub CopySelection()

'정의된 범위에 붙여넣기
Selection.copy range("b1")

'오프셋하여 붙여넣기 (2셀 아래, 1셀 오른쪽으로 오프셋)
Selection.copy
Selection.offset(2,1).Select
ActiveSheet.Paste

Application.CutCopyMode = False

End Sub

셀 범위 복사(잘라내기) 및 붙여넣기

이 예제는 A1:A3 범위의 셀을 복사하거나 잘라내어 B1:B3에 붙여넣습니다:

Sub Paste_Range()

    '셀 범위 복사해서 붙여넣기
    Range("A1:A3").Copy Range("B1:B3")

    '셀 범위 잘라내기 후 붙여넣기
    Range("A1:A3").Cut Range("B1:B3")

End Sub

전체 열 복사(잘라내기) 및 붙여넣기

아래에서 몇 가지 간단한 예시를 보여드리겠습니다. 자세한 예제, 설명 및 응용에 대해서는 행과 열 복사 및 붙여넣기 문서를 참조하세요.

이 예는 전체 A열을 복사하거나 잘라내어 B열에 붙여넣습니다:

Sub PasteOneColumn()

    '열 복사해서 붙여넣기
    Range("A:A").Copy Range("B:B")


    '열 잘라내기 후 붙여넣기
    Range("A:A").Cut Range("B:B")

End Sub

전체 행 복사(잘라내기) 및 붙여넣기

이 예는 1행을 복사하거나 잘라내어 2행에 붙여넣습니다:

Sub Paste_OneRow()

    '행 복사해서 붙여넣기
    Range("1:1").Copy Range("2:2")


    '행 잘라내기 후 붙여넣기
    Range("1:1").Cut Range("2:2")

End Sub

복사(잘라내기) 후 다른 워크시트 또는 통합 문서에 붙여넣기

Sub Paste_Other_Sheet_or_Book()

    '잘라내기 또는 복사하여 다른 워크시트로 붙여넣기
    Worksheets("sheet1").Range("A1").Copy Worksheets("sheet2").Range("B1") 'Copy
    Worksheets("sheet1").Range("A1").Cut Worksheets("sheet2").Range("B1") 'Cut

    '잘라내기 또는 복사하여 다른 통합문서로 붙여넣기
    Workbooks("book1.xlsm").Worksheets("sheet1").Range("A1").Copy _ 
    Workbooks("book2.xlsm").Worksheets("sheet1").Range("B1") 'Copy
    Workbooks("book1.xlsm").Worksheets("sheet1").Range("A1").Cut _ 
    Workbooks("book2.xlsm").Worksheets("sheet1").Range("B1") 'Cut

    Application.CutCopyMode = False
End Sub

값 붙여넣기

일반적으로 복사하여 붙여넣기를 하면 서식, 수식 등 셀의 모든 속성을 붙여넣습니다. 값 붙여넣기를 사용하면 셀의 값만 복사하여 붙여넣을 수 있습니다. VBA에서 값 붙여넣기를 하는 가장 쉬운 방법은 셀의 값을 직접 정의하는 것입니다:

Sub ValuePaste()

    '셀에 값 붙여넣기
    Range("B1").value = Range("A1").value
    Range("B1:B3").value = Range("A1:A3").value

    '다른 워크시트의 값 불러오기
    Worksheets("sheet2").range("A1").value = Worksheets("sheet1").range("A1").value

    '다른 통합 문서의 값 불러오기
    Workbooks("book2.xlsm").Worksheets("sheet1").range("A1").value = _
    Workbooks("book1.xlsm").Worksheets("sheet1").range("A1").value

    Application.CutCopyMode = False
End Sub

선택하여 붙여넣기

선택하여 붙여넣기를 사용하면 셀의 특정 속성(예: 서식, 값, 열 너비 등)을 복사하여 붙여넣을 수 있습니다. 또한 특수 붙여넣기 작업(예: 공백 건너뛰기, 행/열 바꾸기)을 수행할 수 있습니다. 아래에서 몇 가지 예를 살펴보겠지만, 자세한 내용은 값 붙여넣기 및 선택하여 붙여넣기 튜토리얼을 참고하세요.

Sub PasteSpecial()

    '선택하여 붙여넣기 작업을 수행합니다:
    Range("A1").Copy
    '서식 붙여넣기
    Range("B1").PasteSpecial Paste:=xlPasteFormats
    '열 너비 붙여넣기
    Range("B1").PasteSpecial Paste:=xlPasteColumnWidths
    '수식 붙여넣기
    Range("B1").PasteSpecial Paste:=xlPasteFormulas

    '여러개의 선택하여 붙여넣기 옵션을 한번에 적용합니다:
    Range("A1").Copy
    '서식 붙여넣고 행/열 바꿈
    Range("B1").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True

    Application.CutCopyMode = False
End Sub

Clear Clipboard

복사하여 붙여넣기 후 클립보드를 지우고 싶을 수 있습니다(위의 코드 예제 중 일부에서 수행함). Excel 클립보드를 지우려면 Application.CutCopyMode를 False로 설정합니다:

Application.CutCopyMode = False

vba clear clipboard

이렇게 하면 Excel의 클립보드가 지워집니다. 그러나 Windows 클립보드는 지워지지 않습니다. 창 클립보드를 지우려면 여기 지침을 따르세요.

vba-free-addin

VBA 코드 예시 추가 기능

본 웹사이트에 있는 모든 코드 예시에 쉽게 접근해보세요.

메뉴로 이동하여 클릭만 하면 코드는 모듈에 바로 입력됩니다. .xlam 추가 기능.

(설치가 필요 없습니다!)

무료 다운로드

VBA 코드 예시로 돌아가기

AI in the VBA Editor!

AutoMacro is the ultimate VBA add-in.

AI, Generators, UI Builders, Code Library, and More!

Learn More

AutoMacro: AI in the VBA Editor!

Learn More