셀을 마우스 오른쪽 버튼으로 클릭하면 Excel은 다양한 작업을 수행 할 수있는 풍부한 기능의 컨텍스트 메뉴를 제공합니다. 특히 자주 사용하는 기능인 경우 해당 컨텍스트 메뉴에 일부 기능을 추가 할 수 있습니다.

안타깝게도 도구 메뉴에서 사용자 정의를 사용하여 다른 메뉴를 편집 할 수있는 것과 같은 방식으로 컨텍스트 메뉴를 편집 할 수 없습니다. 대신 VBA를 통해 상황에 맞는 메뉴를 조작해야합니다.

셀을 마우스 오른쪽 버튼으로 클릭 할 때 나타나는 컨텍스트 메뉴에 항목을 추가하려면 다음 코드를 사용할 수 있습니다.

Sub AddItemToContextMenu()

Dim cmdNew As CommandBarButton     Set cmdNew = CommandBars("cell").Controls.Add

With cmdNew         .Caption = "My Procedure"

.OnAction = "MyProcedure"

.BeginGroup = True     End With End Sub
Caption 속성을 사용하려는 메뉴 텍스트로 설정 한 다음 사용하려는 매크로 또는 명령을 가리 키도록 .OnAction 속성을 변경하기 만하면됩니다. 나중에 메뉴 옵션을 제거하려면 다음 매크로를 사용할 수 있습니다.
Sub RemoveContextMenuItem()

On Error Resume Next     CommandBars("cell").Controls("My Procedure").Delete End Sub

이를 사용하려면 “My Procedure”텍스트를 이전 매크로의 .Caption 속성에서 사용한 텍스트로 변경합니다. On Error 문은 지정된 매크로 항목이 이전에 추가되지 않은 경우에만이 매크로에서 사용됩니다.

매크로를 약간 수정하여 특정 셀을 마우스 오른쪽 버튼으로 클릭 할 때만 컨텍스트 메뉴에 추가되도록 지정할 수 있습니다. 다음 매크로는 C10 : E25 범위의 셀을 클릭하고 있는지 확인합니다. 그렇다면 상황에 맞는 메뉴 끝에 절차에 대한 메뉴 옵션이 추가됩니다.

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, _   Cancel As Boolean)

Dim cmdNew As CommandBarButton

For Each icbc In Application.CommandBars("cell").Controls         If icbc.Tag = "brccm" Then icbc.Delete     Next icbc

If Not Application.Intersect(Target, Range("c10:e25")) _       Is Nothing Then         Set cmdNew = CommandBars("cell").Controls.Add         With cmdNew             .Caption = "My Procedure"

.OnAction = "MyProcedure"

.BeginGroup = True             .Tag = "brccm"

End With     End If End Sub

VBA 편집기에서이 매크로를 사용할 특정 워크 시트에 추가해야합니다. 프로젝트 탐색기 (VBA 편집기의 왼쪽 상단)에서 해당 워크 시트를 두 번 클릭 한 다음 해당 워크 시트의 코드 창에 입력하기 만하면됩니다.

이전 매크로와 마찬가지로 .Caption 및 .OnAction 속성에 지정된 설정을 수정하기 만하면됩니다. 또한 메뉴 선택 항목을 추가 할 때 “유효한”것으로 간주되는 셀 범위를 변경할 수 있습니다. “c : 10 : e25″범위 사양을 원하는 범위로 변경하기 만하면됩니다. 셀 범위 대신 명명 된 범위를 사용할 수도 있습니다. 유효한 범위가 실제로 연속되지 않은 셀 집합 인 경우 유용합니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (2064)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다.