Excel VBA CommandBarオブジェクト のメソッド・プロパティ

スポンサーリンク
スポンサーリンク

オリジナルコマンドバーを作成する方法

オリジナルのコマンドバーを作成するには
CommandBars【コマンドバーズ】コレクションの
Add【アド】メソッドを使用します。
Addメソッドを実行すると
CommandBar【コマンドバー】オブジェクトが
CommandBars【コマンドバーズ】コレクションに追加されます。
通常は「ツールバー」が作成されますが
Addメソッドの引数Position【ポジション】に
msoBarPopup【エムエスオーバーポップア;ツプ】を指定すると
「ショートカットメニュー」が作成されます。

作成したCommandBar【コマンドバー】オブジェクトの
メニューやボタンを作成するには
CommandBarControls【コマンドバーコントロールズ】コレクションの
Add【アド】メソッドを使用します。
引数Typeに「msoControlPopup」を指定することで
サブメニューを持つメニューに指定できます。

作成したコマンドバーが「ツールバー」の場合は
CommandBar【コマンドバー】オブジェクトの
Visible【ビジブル】プロパティを「True」に設定すると
「アドイン」タグが追加され「アドイン」タグの
リボンにCommandBar【コマンドバー】オブジェクトが表示されます。

作成したコマンドバーが「ショートカットメニュー」の場合は
CommandBar【コマンドバー】オブジェクトの
ShowPopup【ショウポップアップ】メソッドを使用して
ショートカットメニューを使用したいワークシートモジュールの
BeforeRightClik【ビフォアライトクリック】イベントプロシージャーに記述して
セルをマウスボタン右クリックでメニューが表示されるようにします。

「コマンドバー」を作成するメソッド

コマンドバーコントロールの主なプロパティ

以上のメソッドとプロパティについて解説します。

CommandBars.Add【コマンドバーズアド】メソッド

コマンドバーを作成するには
CommandBars【コマンドバーズ】コレクションの
Add【アド】メソッドを使用します。

CommandBars.Add【コマンドバーズアド】メソッドの書式

[]内は省略可能です。
オブジェクト.CommandBars.Add( [Name, Position, Temporary] )


設定値(引数)の説明

  • オブジェクト(必須)
    Application【アプリケーション】オブジェクトを指定します。
  • Name【ネーム】(省略可)
    作成するコマンドバーの名前を設定します。
    省略した場合は、「ユーザー設定 1」といった名前が
    連番で自動的に設定されます。
    設定した名前は画面上に表示されることはありませんが
    操作したいツールバーをVBAで特定するときなどに使用されます。
  • Position【ポジション】(省略可)
    コマンドバーの種類を指定します。

    設定値内容
    msoBarPopup
    【エムエスオーバーポップアップ】
    「ショートカットメニュー」を作成します。
    (省略)「ツールバー」を作成します。
  • Temporary【テンポラリ】(省略可)
    作成したコマンドバーをExcel終了時に削除するかしないかを指定します。

    設定値内容
    Trueコマンドバーを削除する
    Falseコマンドバーを削除しない(既定値)

Controls【コントロールズ】プロパティ

コマンドバーのコントロール表す
CommandBarControls【コマンドバーコントロールズ】コレクションを参照するには
Controls【コントロールズ】プロパティを使用します。

Controls【コントロールズ】プロパティの書式

オブジェクト.Controls


設定値の説明

  • オブジェクト(必須)
    CommandBars.Add【コマンドバーズアド】メソッドで追加した
    CommandBar【コマンドバー】オブジェクトを指定します。

CommandBarControls.Add【コマンドコントロールズアド】メソッド

追加したCommandBar【コマンドバー】オブジェクトに
メニューやボタンを追加するには
CommandBarControlsコレクションの
Add【アド】メソッドを使用します。

CommandBarControls.Add【コマンドコントロールズアド】メソッドの書式

[]内は省略可能です。
オブジェクト.Add( [Type, Before, Temporary] )


設定値(引数)の説明

  • オブジェクト(必須)
    Controls【コントロールズ】プロパティで参照した
    CommandBarControlsコレクションを指定します。
  • Type【タイプ】(省略可)
    作成するコマンドコントロールの種類を
    MsoControlType列挙型の定数で指定します。
    省略した場合は既定値が指定されるので
    サブメニューを持つメニューを作成する場合のみ指定します。

    MsoControlType列挙型の定数
    定数内容
    msoControlButto(既定値)1サブメニューをもたないボタン
    msoControlPopup10サブメニューを持つメニュー

  • Before【ビフォア】
    コマンドバーに配置する位置を数値で指定します。
    指定した位置にあるコマンドバーコントロールの直前に配置されます。
    省略した場合は、コマンドバーの末尾に配置されます。
  • Temporary【テンポラリ】(省略可)
    作成したコマンドバーをExcel終了時に削除するかしないかを指定します。

    設定値内容
    Trueコマンドバーを削除する
    Falseコマンドバーを削除しない(既定値)

Caption【キャプション】プロパティ

コマンドバーコントロールに名前を設定または取得するには
CommandBarControl【コマンドバーコントロール】オブジェクトの
Caption【キャプション】プロパティを使用します。

Caption【キャプション】プロパティの書式

オブジェクト.Caption = 設定値


設定値の説明

  • オブジェクト(必須)
    サブメニューを持たないコントロールを表す
    CommandBarButton【コマンドバーボタン】オブジェクトまたは
    サブメニューがあるコントロールを表す
    CommandBarPopup【コマンドバーポップアップ】を指定します。
  • 設定値
    ボタンやメニューに表示する名前を文字列で指定します。
    名前の文字列の最後に(&半角英数)でアクセスキーを
    設定することができます。
    アクセスキーとはショートカットでAltキーを使用した
    ショートカットです。
    既定のアクセスキーと同じ半角英数を指定した場合は
    既定のアクセスキーが優先されます。
    (例)Caption = “オリジナルボタン(&M)”

FaceID【フェイスアイディ】プロパティ

ボタンにExcelで用意されている
アイコンを表示するには
CommandBarButton【コマンドバーボタン】オブジェクトの
FaceID【フェイスアイディ】プロパティを使用します。
値の取得と設定が可能です。

FaceID【フェイスアイディ】プロパティの書式

オブジェクト.FaceID = 設定値


設定値の説明

  • オブジェクト(必須)
    サブメニューを持たないコントロールを表す
    CommandBarButton【コマンドバーボタン】オブジェクトを指定します。
  • 設定値
    アイコンのID(番号)を指定します。
    アイコンのIDについては
    コマンドバーのボタンイメージ FaceIDを取得する
    をご覧ください。

Style【スタイル】プロパティ

サブメニューを持たない
CommandBarButton【コマンドバーボタン】オブジェクトの
表示方法を設定するには
Style【スタイル】プロパティを使用します。

Style【スタイル】プロパティの書式

オブジェクト.Style = 定数


設定値の説明

  • オブジェクト(必須)
    サブメニューを持たないコントロールを表す
    CommandBarButton【コマンドバーボタン】オブジェクトを指定します。
  • 定数
    コントロールの表示方法を
    MsoButtonStyle列挙型の定数で指定します。

    MsoButtonStyle列挙型の定数
    定数表示方法
    msoButtonCaptionテキストのみ
    msoButtonIconアイコンのみ
    msoButtonAndCaptionテキストとアイコン

OnAction【オンアクション】プロパティ

コントロールに実行するマクロを設定するには
CommandBarControl【コマンドバーコントロール】オブジェクトの
OnAction【オンアクション】メソッドを使用します。

OnAction【オンアクション】プロパティの書式

オブジェクト.OnAction = “実行するマクロ名”


設定値の説明

  • オブジェクト(必須)
    サブメニューを持たないコントロールを表す
    CommandBarButton【コマンドバーボタン】オブジェクトまたは
    サブメニューがあるコントロールを表す
    CommandBarPopup【コマンドバーポップアップ】を指定します。
  • “実行するマクロ名”
    コントロールを押したときに実行するマクロ名を文字列型で指定します。

BeginGroup【ビギングループ】プロパティ

コントロールに区切り線を表示するかしないかを設定するには
CommandBarControl【コマンドバーコントロール】オブジェクトの
BeginGroup【ビギングループ】プロパティを使用します。

BeginGroup【ビギングループ】プロパティの書式

オブジェクト.BeginGroup = 設定値


設定値の説明

  • オブジェクト(必須)
    サブメニューを持たないコントロールを表す
    CommandBarButton【コマンドバーボタン】オブジェクトまたは
    サブメニューがあるコントロールを表す
    CommandBarPopup【コマンドバーポップアップ】を指定します。
  • 設定値
    区切り線を表示する場合は「True」を設定します。

    設定値内容
    True区切り線を表示
    False区切り線を非表示(既定値)

TooltipText【ツールチップテキスト】プロパティ

マウスポンタ―がコントロール上にあるときに
ポップヒントを表示するには
CommandBarControl【コマンドバーコントロール】オブジェクトの
TooltipText【ツールチップテキスト】プロパティを使用します。

TooltipText【ツールチップテキスト】プロパティの書式

オブジェクト.TooltipText = “表示する文字列”


  • オブジェクト(必須)
    サブメニューを持たないコントロールを表す
    CommandBarButton【コマンドバーボタン】オブジェクトまたは
    サブメニューがあるコントロールを表す
    CommandBarPopup【コマンドバーポップアップ】を指定します。
  • “表示する文字列”
    表示する文字を文字列型で指定します。
    TooltipText【ツールチップテキスト】プロパティを設定しない場合は
    ポップヒントとして表示されるのは
    Caption【キャプション】プロパティに設定した文字列です。

Visible【ビジブル】プロパティ

Addメソッドで作成した
コマンドバーを表示するには
CommandBar【コマンドバー】オブジェクト
Visible【ビジブル】プロパティを使用します。

Visible【ビジブル】プロパティの書式

オブジェクト.Visible = 設定値


設定値

  • オブジェクト(必須)
    CommandBar【コマンドバー】オブジェクトを指定します。
  • 設定値
    コマンドバーを表示するには「True」を設定します。

    設定値内容
    Trueコマンドバーを表示します。
    Falseコマンドバーを非表示にします。(既定値)

CommandBar.ShowPopup【コマンドバーショウポップアップ】メソッド

CommandBars.Add【コマンドバーズアド】メソッドで
引数Position【ポジション】にmsoBarPopupを指定して作成した
「ショートカットメニュー」を表示するには
CommandBar【コマンドバー】オブジェクトの
ShowPopup【ショウポップアップ】メソッドを使用します。

CommandBar.ShowPopup【コマンドバーショウポップアップ】メソッドの書式

オブジェクト.ShowPopup


設定値の説明

  • オブジェクト(必須)
    表示する「ショートカットメニュー」を表す
    CommandBar【コマンドバー】オブジェクトを指定します。

    ※ショートカットメニューを作成するコードは
    ショートカットメニューを使用したいワークシートモジュールの
    「BeforeRightClick」イベントプロシージャに記述します。
    ショートカットメニューをクリックしたときに実行する
    マクロは標準モジュールに記述します。


コード例リンク


以上で
CommandBarオブジェクト のメソッド・プロパティについての
解説を終了します。
ありがとうございました。

スポンサーリンク
スポンサーリンク

フォローする

スポンサーリンク
スポンサーリンク