2013-03-05 7 views
2
이 저를지도 할 수 있도록 할 내가 프로그래밍 워드 2007

디스플레이 바로 Microsoft Word에서 VBA 매크로를 통해에 초점을 상황에 맞는 메뉴를 클릭 2007

에서 VBA 매크로를 통해 초점을 오른쪽 클릭 컨텍스트 메뉴를 표시 할 것

매크로를 단축키에 추가하고 키보드에서 벗어나지 않고 포커스가있는 메뉴를 표시하십시오. 나는이의 라인을 따라 접근의 Application 개체의 CommandBars 컬렉션을 수행 할 것입니다 가정 :

Application.CommandBars.'access appropriate mehod or member here'

그러나 나는이 상황에 맞는 메뉴를 표시 할 것 같아 어떤 방법 또는 구성원을 볼 수 없습니다. VBA 매크로를 통해이를 달성 할 수 있습니까?

편집 :

로서 나는 각각의 명령 모음을 통해 루프 및 사용하려고하는 명령 모음 인덱스를 찾아 이름과 인덱스를 얻을 제안 :

Sub C_RightClick() 
'Activates right-click context menu 
' 

Dim cbar As Office.CommandBar 
Dim cbarIndex As Integer 
Dim testString As String 
Dim cBarsArray(0 To 500) 
Dim arrayCounter As Integer 

testString = "" 
arrayCounter = 1 

For Each cbar In CommandBars 
    'TRUE if right-click 
    'If LCase(cbar.Name) = 'right-click' Then 
    ' cbarIndex = cbar.Index 
    'End If 

    testString = testString + CStr(cbar.Index) + " " + cbar.Name + " " + CStr(cbar.Type = msoBarTypePopup) + vbCrLf 
    Debug.Print cbar.Name; " "; cbar.Type = msoBarTypePopup 

    'Add name to array and increment counter 
    cBarsArray(arrayCounter) = cbar.Name 
    arrayCounter = arrayCounter + 1 

Next cbar 

MsgBox testString 

'Application.CommandBars(cbarIndex).ShowPopup 


End Sub 

을하지만, 나는 어떤 표시되지 않습니다 제목이 'Right-Click'입니다. 인덱스가 1 인 '표준'일지도 모른다고 생각했지만 액세스하려고 시도했을 때 오류가 발생했습니다.

Home 탭을 선택하면 Word 2007에 나타나는 기본 마우스 오른쪽 단추로 상황에 맞는 메뉴의 이름을 아는 사람이라면 누구나 알고 있습니다. 그렇지 않으면, 나는 그 질문을 수퍼 유저에게하고 내 자신에 대한 연구를 할 것입니다. 도와 주셔서 감사합니다. 인수는 명령 모음의 인덱스 또는 캡션이 될 수

Application.CommandBars(100).ShowPopup 

: 같은

+0

은 홈 탭 메뉴의 생각에 대한 내 편집을 참조하십시오. –

답변

1

보십시오 뭔가.

는 명령 모음의 특정 명령을 실행 같은 시도하려면 직접 실행 창에 대한 모든 명령 모음의 목록을 인쇄하려면

Application.CommandBars(100).Controls("Paste").Execute 

을 :

Sub test() 
Dim cbar As Office.CommandBar 
For Each cbar In CommandBars 
    'TRUE if right-click 
    Debug.Print cbar.Name; " "; cbar.Type = msoBarTypePopup 
Next cbar 
End Sub 

편집 : 대답에 홈 탭에서 마우스 오른쪽 버튼으로 클릭하는 메뉴에 관한 질문에 대해서는 CommandBar에서 다른 종류의 제어라고 생각합니다.

오른쪽 클릭 메뉴 이름과 색인에 대해 더 잘 알기 위해 위 코드를 약간 수정했습니다. 이제 각 오른쪽 클릭 메뉴에 컨트롤을 추가하려고 시도합니다. 추가 된 컨트롤의 캡션은 메뉴의 이름과 인덱스입니다. 컨트롤은 일시적입니다. 다음에 Word를 열면 사라질 것입니다.

오류 메시지가있는 경우 오류 메시지를 즉시 창에 인쇄합니다.

"홈"상황에 맞는 메뉴가 좋다고 생각하지 않는 이유는 컨트롤이 추가되지 않는다는 것입니다. 다음은 제어 메뉴의 그림이 추가됩니다 :

enter image description here