VBA Application.CutCopyMode = False – 이 구문은 무엇을 의미할까요?
In this Article
VBA Application.CutCopyMode = False
복사하여 붙여넣는 동안 매크로를 기록한 적이 있다면 다음 코드를 본적이 있을 것입니다:
Application.CutCopyMode = False
이 코드 줄은 클립보드*를 “지웁니다”. Excel 셀을 복사한 다음 이 코드를 실행하면 복사한 셀 주변의 애니메이션이 제거됩니다:
CutCopyMode는 Microsoft Office 프로그램(예: Excel)이 잘라내기 또는 복사 모드에 있는지 여부를 나타내는 애플리케이션 수준 속성입니다. 복사(또는 잘라내기) 모드에 있는 동안 Excel에는 클립보드에 붙여넣을 수 있는 내용이 저장되어 있습니다.
제 경험상 일부러 Application.CutCopyMode를 True로 설정해야 할 때는 없습니다.
CutCopyMode = False
일반적으로 VBA 복사+붙여넣기 예제를 사용하면 Application CutCopyMode = False를 설정하지 않아도 됩니다. 예를 들어, 다음 예제에서 코드 한줄로 셀을 복사하여 붙여넣기하므로 CutCopyMode를 False로 설정할 필요가 없습니다:
Sub CopyPaste_OneLine()
Range("a1").Copy Range("b1")
End Sub
Application.CutCopyMode 상태 가져오기
때때로 Application.CutCopyMode의 상태를 얻고 싶을 때가 있습니다. 클립보드에 아무것도 없을 때 붙여넣기를 시도하는 동안 발생할 수 있는 오류를 방지할 수 있습니다. 상태를 가져오려면 다음 코드를 사용하세요:
Sub Get_Application_CutCopyMode_Status()
Select Case Application.CutCopyMode
Case Is = xlCopy
MsgBox "복사하기 모드"
Case Is = xlCut
MsgBox "잘라내기 모드"
Case Is = False
MsgBox "해당되는 모드 없음"
End Select
End Sub
*Application.CutCopyMode는 Microsoft Office 앱(예: Excel) 클립보드만 지웁니다. Window의 클립보드는 지우지 않습니다. 링크를 클릭하여 VBA에서 Window의 클립보드를 지우는 방법에 대해 자세히 알아보세요.