Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Установить фокус на вкладке ленты / 5 сообщений из 5, страница 1 из 1
30.11.2018, 08:29
    #39740657
OxY63rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установить фокус на вкладке ленты
Доброго времнеи суток!
На ribbon есть мои кнопки, которые что-то делаю. Одна из кнопок формирует форматированную таблицу (диапазон). Вследствие чего лента excel перескакивает на стандратную вклдаку (Работа с таблицами/Конструктор). Как вернуть фокус на мою вкладку (контрол на моей вкладке Ribbon)?
...
Рейтинг: 0 / 0
30.11.2018, 08:55
    #39740668
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установить фокус на вкладке ленты
OxY63rus,

Насколько знаю из VBA этого не сделать. Но есть метод ActivateTab у самой Ribbon, если брать именно свою Ribbon, которую создали через XML. Можно его попробовать вызывать после выполнения нужных команд.
...
Рейтинг: 0 / 0
30.11.2018, 09:31
    #39740675
OxY63rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установить фокус на вкладке ленты
The_Prist, спасибо за совет!
Прописал событие onLoad для CustomUI в XML.
В обработчике события установил глобальной переменной типа IRibbonUI
Код: vbnet
1.
2.
3.
4.
5.
Public MyRibbon As IRibbonUI

Public Sub Load(Ribbon As IRibbonUI)
   Set MyRibbon = ribbon
End Sub


Далее любом месте кода, где возможно переключение вкладки применяем
Код: vbnet
1.
MyRibbon.ActivateTab "{Идентификатор_вкладки}"


Вопрос закрыт
...
Рейтинг: 0 / 0
17.01.2019, 11:33
    #39760719
OxY63rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установить фокус на вкладке ленты
Подниму свой вопрос снова.
Кто является родителем для MyRibbon?
Я код вынес во внешнюю библиотеку и теперь не могу достучаться до своей ленты.
Передаю в либу экземляр Excel, но ExApp.MyRibbon.ActivateTab не срабатывает.
...
Рейтинг: 0 / 0
17.01.2019, 14:35
    #39760889
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установить фокус на вкладке ленты
OxY63rus,

Родитель - Офис. И достучаться извне не получится, надо отлавливать именно событие Ribbon_Load внутри своей библиотеки. Для этого потребуется Office.IRibbonExtensibility, иначе управлять лентой из библиотеки никак не удастся.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Установить фокус на вкладке ленты / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]