Доброй ночи!
У меня была надстройка, в ней макрос, который через Application.OnKey был прикреплен к клавишам Ctrl+F9.
Он выводил адрес выделенного диапазона.
Недавно я начал изучать редактирование ленты через XML.
Я сделал так, чтобы при открытии надстройки добавлялась новая вкладка, в ней новая кнопка, которая запускала тот самый макрос.
Чтобы кнопка с ленты заработала, я добавил в название макроса, внутрь скобок "control as iRibboncontrol".
Но из-за этого, при нажатии Ctrl+F9.даёт ошибку "Argument not optional".
Чтобы макрос работал и с кнопки на ленте, и с хоткейа Ctrl+F9, я написал макрос, который запускается при нажатии кнопки с ленты и сам ничего такого не делает, а просто запускает мой макрос:
Вопрос: Чтобы макрос работал и с кнопки на ленте, и с хоткейа Ctrl+F9, есть какой-то более простой способ, чем мой?
Может в XML или в VBA можно использовать какое-то свойство, чтобы не писать два макроса?
Короче говоря, можно ли обойти проще, чем писать макросчик на каждую кнопку, на запуск основного макроса?
P.S. Я знаю, что в XML можно задать кнопке на ленте хоткей (через keytip), но это мне не подходит.
P.P.S. В реале макросов больше.
У меня была надстройка, в ней макрос, который через Application.OnKey был прикреплен к клавишам Ctrl+F9.
Он выводил адрес выделенного диапазона.
Недавно я начал изучать редактирование ленты через XML.
Я сделал так, чтобы при открытии надстройки добавлялась новая вкладка, в ней новая кнопка, которая запускала тот самый макрос.
Чтобы кнопка с ленты заработала, я добавил в название макроса, внутрь скобок "control as iRibboncontrol".
Но из-за этого, при нажатии Ctrl+F9.даёт ошибку "Argument not optional".
Чтобы макрос работал и с кнопки на ленте, и с хоткейа Ctrl+F9, я написал макрос, который запускается при нажатии кнопки с ленты и сам ничего такого не делает, а просто запускает мой макрос:
Код |
---|
Sub rekvizit_rbc(control As IRibbonControl) Application.Run "rekvizit" End Sub Sub rekvizit() MsgBox Selection.Address End Sub |
Может в XML или в VBA можно использовать какое-то свойство, чтобы не писать два макроса?
Короче говоря, можно ли обойти проще, чем писать макросчик на каждую кнопку, на запуск основного макроса?
P.S. Я знаю, что в XML можно задать кнопке на ленте хоткей (через keytip), но это мне не подходит.
P.P.S. В реале макросов больше.