|
|
|
| Как узнать какой нажали пункт меню (номер, идентификатор)? | |
|
| |
|
|
|
| CommandBars.ActionControl... | |
|
| |
|
|
|
| ща попробую. спсб
чЁ-т ничЁ не получилось
Debug.Print CommandBars.ActionControl.Index
Debug.Print CommandBars.ActionControl.Caption
Не возвращает ничего | |
|
| |
|
|
|
| Однако не получилось. Еще мысли есть? | |
|
| |
|
|
|
| А где вы это проверяли? Насколько я понял справку, если несколько кнопок вызывают одну процедуру, то внутри этой процедуры CommandBars.ActionControl вернет ссылу на вызвавшую ее кнопку.
Если нужно узнать вообще какую кнопку нажали, то, видимо, только ловить событие Click. | |
|
| |
|
|
|
| Речь не о кнопке. Мне бы хотелось знать какой пункт меню или панели инструментов нажали. | |
|
| |
|
|
|
| 1. Если менюшка/панель инструментов штатная - через подписку на Click кнопок меню/ПИ.
(Должна быть подключена офисная библиотека).
2. Если самодельная -
а. см. п. 1
б. Через задание значения свойств OnClick (опционально Parameter, Tag) кнопки меню. | |
|
| |
|
|
|
| Попробую осознать | |
|
| |
|
|
|
| Опиши подробней задачу,
приложи пример. | |
|
| |
|
15 Кб. |
|
| Вот попробовал смоделировать.
События меню, нацеленные внутрь форм работают и индекс пункта меню ловится.
.
А на открытие (формы2) работает но не ловится. | |
|
| |
|
|
|
| Вы пытаетесь "поймать" тогда, когда оно уже "отработало и почило в бозе."
О чем и сообщает Err.Description, говоря что Object variable not set (это он про CommandBars.ActionControl). | |
|
| |
|
|
|
| Дак это понятно. Я и спрашивал как. Значит НИКАК.
Понял. Вопрос снят. | |
|
| |
|
|
|
| Как, я ответил.
Остался вопрос Где?
Если там, где сейчас - через посредника, который получит значение и сохранит его "до востребования" формой.
зы:
Непонятно, почему именно там. Цель какая?
зы2:
Макросы не нужны.
В OnAction можно сразу прописывать паблик функцию модуля.
Там отлавливать, открывать форму, передавать ей аргумент, в Form_Open считывать этот аргумент. (Это ежели по-простому). | |
|
| |
|
|
|
|
Там отлавливать, открывать форму, передавать ей аргумент, в Form_Open считывать этот аргумент. (Это ежели по-простому).
|
Я, в общем, так и делаю.
Нужно для создания "универсальныой панели" для нескольких форм как раз, чтобы не использовать макросы. Но, в общем-то, конечно, необязательно все это. Спасибо за дискуссию. | |
|
| |