Есть пример 2 http://market.leadersoft.ru/Product.aspx?ProductID=3818, но лучше не тратить на это время, т.к. в 2007 версии вообще меню пользователя сильно изменилось. OnAction - это внешняя функция, может быть указана с параметрами.
Private Sub butInsert_Click() Dim But As CommandBarButton 'Mso9.dll On Error GoTo 999 Set But = Application.CommandBars("Мое меню").Controls.Add(msoControlButton) With But .BeginGroup = True 'Начинаем размещение с начала группы .FaceId = 1 'Устанавливаем код кнопки .Style = msoButtonCaption 'Выбираем стандартный тип .Caption = "Привет" 'Называем кнопку .TooltipText = "Мой привет всем!" 'Всплывающая подсказка .OnAction = "=msgbox(""Привет всем!"")" 'Моя программа End With Exit Sub 999: Err.Clear End Sub