Office 2003 では、実行時にカスタム サブメニュー (CommandBar 用語でポップアップ (msoControlPopup) と呼ばれるもの) を作成し、そのイメージを設定したいと考えています。CommandBarButton を使用すると、これは非常に簡単です。
Set btn1 = mnu.Controls.Add(msoControlButton, temporary:=True)
btn1.Caption = "Btn1"
btn1.Picture = stdole.LoadPicture("C:\temp\test.bmp")
ただし、msoControlPopup 型の CommandBarPopup または CommandBarControl では失敗します。
Set sub1 = mnu.Controls.Add(msoControlPopup, temporary:=True)
sub1.Caption = "Sub1"
'object doesn't support this property or method for next line
sub1.Picture = stdole.LoadPicture("C:\temp\test.bmp")
msoControlPopup タイプもプロパティを許可していないようです.Style
。これは、Office がコントロールに表示するもの (アイコン、テキスト、両方) を決定する方法です。私はこれがまだ証明されていないので、何か間違ったことをしているという最後の希望を抱いています。実際、実行時にサブメニューにアイコンを挿入する方法があります。
あなたが流すことができる光をありがとう。