Мне когда-то очень помог сайт:
www.rondebruin.nl/win/s2/win003.htm, внизу этой страницы есть архив
DropDown.zip с примерами создания списков.
- За формирование списка в файле Ron_DropDown.xlsm отвечает процедура DDListItem (все процедуры, связанные с Ribbon-меню, обязательно должны содержать параметр "control As IRibbonControl"; подсказки в своём проекте покажет RibbonXMLEditor).
- Элементы недостаточно задать параметрами, - их нужно нарисовать. Для обновления Ribbon-меню в файле Jim_DynDropDown.xlsm отвечает процедура RedoRib, которая содержит единственный метод "rib.Invalidate". Если возникнет ошибка (в процессе отладки) и объект примет значение "rib = Nothing", то лента станет недоступной.
Для изучения примеров вам понадобится RibbonXMLEditor.
На сайте:
fluentui.blogspot.ru есть русскоязычная информация о Ribbon-меню.