Microsoft Excel VBA - FaceIDプロパティに設定できる各値に対応するボタンを含むツールバーを作成する方法
◆概要
このページは、OfficeのVBAで組み込みコマンドのIDと名前の一覧をテキストファイルに出力する方法について記載しています。
◆Sample code
次のプロシージャを任意のOfficeアプリケーションで実行すると、FaceIdプロパティに設定できる各値に対応するボタンを含むカスタムツールバーを作成します。これらのボタンをマウスでポイントすると、そのボタンのFaceIdプロパティの値が表示されます。
取得できたFaceIdプロパティは、ツールバーにコントロールを追加する方法で利用すると良いでしょう。
Sub MakeAllFaceIds() 'それぞれ 300 個のボタンが含まれる 14 個のツールバーを作成します。 'maxIdは有効な ID の最大値よりも大きいため、有効な ID の最大値より大きい値が '初めて使用された時点でエラーが発生します。 On Error GoTo realMax Const maxID = 3900 Dim bars% Dim firstId% Dim lastId% Dim i% Dim tb As Object, btn As Object For bars% = 0 To 13 firstId% = bars% * 300 lastId% = firstId% + 299 Set tb = CommandBars.Add For i% = firstId% To lastId% Set btn = tb.Controls.Add btn.FaceId = i btn.TooltipText = "FaseID : " & i Next tb.Name = ("ボタン (" & CStr(firstId%) & "〜" _ & CStr(lastId%) & ")") tb.Width = 591 tb.Visible = True Next 'エラーの原因となったボタンを削除し、ツールバー名を設定します。 realMax: btn.Delete tb.Name = ("ボタン (" & CStr(firstId) & "〜" & CStr(i - 1) & ")") tb.Width = 591 tb.Visible = True End Sub |
◆実行結果
Excel2002の場合
Excel2007の場合、アドインリボンの中に追加される
◆ツールバーの削除方法
このマクロで追加されたカスタムツールバーを削除するには、メニューの何もないところで右クリックし、表示されたショートカットメニューからユーザー設定を選択します。するとユーザー設定ダイアログボックスが表示されますので、[ツールバー]タブのツールバーで[ボタン(xxx〜xxx)]を選び、削除ボタンを押します。
Excel2007の場合
追加されたボタンを右クリックして、表示されたメニューから「ユーザー設定のコマンドの削除」をクリックします。
▼ページトップへ