Copy & Paste

"Paste" 기능은 VBA에서 데이터를 복사하여 다른 위치에 붙여넣을 때 사용됩니다. 아래 예제는 Range.CopyRange.PasteSpecial 메서드를 사용하여 워크시트에서 데이터를 복사하고, 다른 위치에 붙여넣는 코드입니다.

Sub PasteExample()
    Dim sourceRange As Range
    Dim destinationRange As Range

    ' 복사할 범위 선택
    Set sourceRange = Range("A1:B2")

    ' 붙여넣을 대상 범위 선택
    Set destinationRange = Range("C3")

    ' 데이터 복사 및 붙여넣기
    sourceRange.Copy
    destinationRange.PasteSpecial Paste:=xlPasteValues
End Sub

위 코드에서 Sub는 매크로(서브루틴)을 정의하는 키워드이며, PasteExample은 이 매크로의 이름입니다.

다음으로 오는 줄에서는 sourceRangedestinationRange이라는 변수를 각각의 Range 객체로 선언합니다.

복사할 데이터 범위로 A1부터 B2까지의 셀을 선택하기 위해 Set sourceRange = Range("A1:B2") 구문을 사용합니다. 이렇게 선택된 범위가 변수 sourceRange에 할당됩니다.

붙여넣을 대상 범위로 C3 셀을 선택하기 위해 Set destinationRange = Range("C3") 구문을 사용합니다. 이렇게 선택된 범위가 변수 destinationRage에 할당됩니다.

데이터를 복사하기 위해 sourceRage.Copy, 그리고 붙여넣기 위해 destinationRage.PasteSpecial Paste:=xlPasteValues 구문을 사용합니다. .Copy 메서드는 복사 대상(sourceRage)의 데이터를 클립보드에 저장하고, .PasteSpecial Paste:=xlPasteValues 메서드는 클립보드의 값을 지정한 대상(destinationRage)에 특정 형식(xlPasteValues)으로 붙여넣습니다. 예제에서는 값만(수식이 아닌 값 자체) 붙여넣기 하도록 설정되어 있습니다.

실행 결과로서, A1부터 B2까지의 원래 데이터가 C3부터 D4까지 포함하는 새로운 위치에 값만 복사되어 붙여넣어집니다.

+ Recent posts