コンテナー アプリケーションでのコマンド バーを表します。 CommandBar オブジェクトは、CommandBars コレクションのメンバーです。
注:
[!メモ] 一部の Microsoft Office アプリケーションにおける CommandBars の使用方法が、Microsoft Office Fluent ユーザー インターフェイスの新しいリボン コンポーネントによって置き換えられました。 詳細については、「Office Fluent リボンの概要」を参照してください。
例
1 つの CommandBar オブジェクトを返すには、CommandBars (インデックス) を使用します。ここで、index はコマンド バーの名前またはインデックス番号です。 次の例では、コマンド バーのコレクションを順を追って、"Forms" という名前のコマンド バーを見つけます。このコマンド バーが見つかった場合、例ではコマンド バーを表示してドッキング状態を保護します。 この例では、変数 cb は CommandBar オブジェクトを表します。
foundFlag = False
For Each cb In CommandBars
If cb.Name = "Forms" Then
cb.Protection = msoBarNoChangeDock
cb.Visible = True
foundFlag = True
End If
Next cb
If Not foundFlag Then
MsgBox "The collection does not contain a Forms command bar."
End If
名前またはインデックス番号を使用して、コンテナー アプリケーションで使用可能なメニュー バーとツールバーの一覧でメニュー バーまたはツールバーを指定します。 ただし、CommandBar オブジェクトで表されるメニュー、ショートカット メニュー、またはサブメニューを指定するには、名前を使用する必要があります。 次の使用例は、[ツール] メニューの下端に新しいメニュー項目を追加します。 選択すると、新しいメニュー項目は「qtrReport」という名前のプロシージャを実行します。
Set newItem = CommandBars("Tools").Controls.Add(Type:=msoControlButton)
With newItem
.BeginGroup = True
.Caption = "Make Report"
.FaceID = 0
.OnAction = "qtrReport"
End With
2 つ以上のカスタム メニューまたはサブメニューが同じ名前の場合、 CommandBars(index) は 最初のメニューまたはサブメニューを返します。 目的のメニューまたはサブメニューが確実に返されるようにするには、そのメニューを表示するポップアップ コントロールを検索します。 次に、そのポップアップ コントロールに CommandBar プロパティを設定すると、目的のメニューを表すコマンド バーが返されます。 この例では、ツールバーの [カスタム ツール] という名前の 3 番目のコントロールがポップアップ コントロールであると仮定し、そのメニューの一番下に [保存 ] コマンドを追加します。
Set viewMenu = CommandBars("Custom Tools").Controls(3)
viewMenu.Controls.Add ID:=3 'ID of Save command is 3
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。