Word 2007のVBAマクロを使用して、フォーカスのある右クリックのコンテキストメニューをプログラムで表示したいと思います。
これにより、マクロをホットキーにマップし、キーボードを離れることなくフォーカスのあるメニューを表示できます。これは、次の行に沿ってアクセスされるApplication
オブジェクトのコレクションを介して行われると想定しました。CommandBars
Application.CommandBars.'access appropriate mehod or member here'
しかし、コンテキストメニューを表示するように見えるメソッドやメンバーは表示されません。VBAマクロを介してこれを実現することは可能ですか?
編集:
提案されたように、私は各CommandBarをループし、名前とインデックスを取得して、使用するCommandBarインデックスを見つけようとしました。
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
ただし、「右クリック」というタイトルは表示されません。インデックスが1の「標準」である可能性があると思いましたが、アクセスしようとするとエラーが発生しました。
タブが選択されたときにWord2007に表示されるデフォルトの右クリックコンテキストメニューの正しい名前を誰かが知っている場合Home
は、それをいただければ幸いです。それ以外の場合は、その質問をスーパーユーザーに渡して、自分で調査します。お手伝いありがとう。