2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

« ◆ネット自動ログインツール | トップページ | ◆Excel VBA(ショートカットキーをカスタマイズ) »

2007年3月15日 (木)

◆Excel VBA(右クリックメニューをカスタマイズ)

今日からExcelカスタマイズ特集をしてみよう。

本日は第1弾として、右クリックメニューのカスタマイズ方法です。

右クリックメニューとは任意のセル上でマウスの右クリックをした

時に表示されるメニューです。

これをVBAマクロで変更することが出来ます。

Photo

例えば以下の通りです。

フラグによって、メニューの追加と削除を行う例です。

いくつかポイントがありますが、まず、

"Cell", "Column", "Row"はExcelが内部管理している

メニューの種類です。セル上のメニュー、列選択したときのメニュー

、行選択したときのメニューということです。

次に、Controls.Add(type:=msoControlButtonですが、ボタン形式

のメニューということです。さらに、そのアイコンはFaceIdの番号

で指定します。詳細はVBAのヘルプをご覧ください。

For Each oCb In Application.CommandBars
      Select Case oCb.Name
      Case "Cell", "Column", "Row"
            With oCb
                    If pFlg = True Then
                        'キー割当て
                        With .Controls.Add(type:=msoControlButton, id:=266, Temporary:=True)
                            .Caption = "処理名(メニュー名)"
                            .OnAction = "m_処理"
                            .BeginGroup = True
                            .FaceId = 496
                        End With
                    Else
                        'キー割当て解除
                        For Each oCc In .Controls
                            If oCc.Caption = "処理名(メニュー名)" Then
                                oCc.DELETE
                            End If
                        Next
                    End If
           End With
      End Select
Next oCb

次回はショートカットキーについて。

※私が作成したVBAツールです。よかったら使ってみてください。

« ◆ネット自動ログインツール | トップページ | ◆Excel VBA(ショートカットキーをカスタマイズ) »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« ◆ネット自動ログインツール | トップページ | ◆Excel VBA(ショートカットキーをカスタマイズ) »