2010-05-15 3 views
4

Мне нужно добавить изображение в пользовательскую панель инструментов/элемент меню, который создается через VBA.Как добавить значок в меню Excel/кнопку панели инструментов

Для элемента панели инструментов, я попытался следующий код

Set NewBtn = TBar.Controls.Add(Type:=msoControlButton) 
With NewBtn 

.Picture = LoadPicture("mypic.bmp") 
.OnAction = "'MyFunction""" & para1 & """'" //VBA Function 
'.Caption = "MyFunction" 
.TooltipText = "MyFunction" 
.Style = msoButtonCaption 

End With 

В приведенном выше коде LoadPicture(), кажется, не работает. Моя панель инструментов инициализируется при событии загрузки рабочей книги. Я заметил, что изображение загружается на кнопку панели инструментов, но за долю секунды оно исчезает и отображается только текст элемента. Мое изображение - 16x16 пикселей.

Любая помощь ценят, чтобы обойти эту проблему

Спасибо

ответ

1

Используйте MsoButtonStyle.msoButtonIcon или один из MsoButtonStyle членов, которые содержат слово Icon.

0

В VBA хранить значки на рабочем листе (oTemplate) и передавать их на кнопки с помощью:
with NewBtn
oTemplate.Shapes("picCalcOpt").CopyPicture
.PasteFace

Смежные вопросы