Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


30587 / 76738 ←次へ | 前へ→

【51416】Re:マウスの右クリック
お礼  tomi  - 07/9/16(日) 3:30 -

引用なし
パスワード
   ▼ichinose さん:
>こんばんは。
>
>>マウスを右クリックするとポップアップメニューが表示されますが、
>>その中のどの項目を選択したかを取得する方法がありますでしょうか。
>
>クラスモジュールを使って、Commandbarbuttonのクリックイベントを取得すると
>出来るかもしれませんよ!!
>
>一例です。
>
>新規ブックにおいて、クラスモジュールを作成します。
>クラス名  Class1
>
>このClass1のクラスモジュールに以下のコード。
>
>'=====================================================
>Option Explicit
>Public WithEvents cmdb As CommandBarButton
>'=================================================================
>Private Sub cmdb_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
>  MsgBox Ctrl.Caption & " がクリックされました"
>End Sub
>
>
>標準モジュールに
>'================================================================
>Option Explicit
>Dim cmbcls() As Class1
>'================================================================
>Sub main()
>  'On Error Resume Next
>  Dim cmb As CommandBarButton
>  Dim idx As Long
>  For Each cmb In CommandBars("Cell").Controls
>    ReDim Preserve cmbcls(1 To idx + 1)
>    Set cmbcls(idx + 1) = New Class1
>    With cmbcls(idx + 1)
>     Set .cmdb = cmb
>     End With
>    idx = idx + 1
>    Next
>End Sub
>
>
>として、mainを実行した後に右クリックで適当なボタンをクリックしてください。
>
>該当するボタンのCaptionが表示されます。
>
>試してみてください。
>
>尚、コードはExcel2002で確認しました。
実行しました。解決できました。お手数をお掛けしてすみませんでした。

0 hits

【51407】マウスの右クリック tomi 07/9/15(土) 18:01 質問
【51408】Re:マウスの右クリック ikeri 07/9/15(土) 19:27 回答
【51409】Re:マウスの右クリック じゅんじゅん 07/9/15(土) 21:07 発言
【51410】Re:マウスの右クリック ichinose 07/9/15(土) 21:12 発言
【51416】Re:マウスの右クリック tomi 07/9/16(日) 3:30 お礼
【51417】Re:マウスの右クリック とおりすがり 07/9/16(日) 9:25 発言

30587 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free