Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4950
Появилась необходимость программно сворачивать/разворачивать ленту(Ribbon) в Access 2007 и выше. Кто-нибудь может подсказать, как это сделать?

-------------------------------------------------------------
А ты вложил уже свой кровный рубль в 50-ти миллиардное состояние Билла Гейтса?
13 фев 17, 10:22    [20206290]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
пв
Guest
https://www.sql.ru/forum/862643/programmno-skryt-lentu-menu-ribbon

Не то?
13 фев 17, 16:33    [20208396]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4950
Не совсем то, что надо. Надо не скрыть ленту, а свернуть её. При скрытии пропадает так же строка меню (вкладыши ленты).
13 фев 17, 16:48    [20208460]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 561
10896288
сворачивает нормально
13 фев 17, 19:38    [20208934]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
Вакшуль Сергей
Member

Откуда: Харьков
Сообщений: 393
Joss,

случайно ответил не в ту ветку:
20209500
14 фев 17, 00:18    [20209505]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4950
Вакшуль Сергей
Joss,

случайно ответил не в ту ветку:
20209500

Спасибо за наводку. Не сразу понял, что команда
   CommandBars.ExecuteMso "MinimizeRibbon" 
работает как триггер, и сначала надо проверить состояние ленты. Что-то типа
   If CommandBars("Ribbon").Height > 100 Then
      CommandBars.ExecuteMso "MinimizeRibbon"
      DoEvents
   End If
При поиске информации наткнулся на замечание, что команда
   CommandBars.ExecuteMso "MinimizeRibbon" 
работает только в Access 2010 и выше, а в Access 2007 - нет. Проверить не могу, так как под рукой нет Access 2007. Команда
   SendKeys ("^{F1}") ' Ctrl + F1
Так же сворачивает и разворачивает ленту. Возможно стоит применять её для универсальности. Только сначала надо определить версию Access и не использовать её в версиях 2003 и младше.
14 фев 17, 10:05    [20209865]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 561
Joss,
CommandBars.ExecuteMso "MinimizeRibbon"

в 2007 аксе выдает ошибку Runtime eroor #5
и к сожалению
SendKeys ("^{F1}") ' Ctrl + F1

изменяет настройки Numlock.
так что тоже не очень. оказывается.
14 фев 17, 10:32    [20209932]     Ответить | Цитировать Сообщить модератору
 Re: Как программно свернуть/развернуть ленту (Access 2007 и выше)?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4950
Нашёл тут у соседей 2003 и 2007. В 2003 запрос размера и переключение выдаёт ошибки
   SendKeys ("^{F1}")
включает/выключает дополнительную панель справа. На NumLock внимание не обратил.
В 2007
   SendKeys ("^{F1}")
сворачивает и разворачивает ленту, но вот фокусы с NumLock я не заметил без подсказки. Сейчас проверю, как эта комбинация работает в 2010.
14 фев 17, 11:26    [20210104]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить