Word 2007 + Использовать команды через макрос? - PullRequest
0 голосов
/ 10 августа 2011

Мне было интересно, можно ли запускать команды Word через макросы vba? По сути, я стараюсь сделать так, чтобы пользователям было проще открывать окно «Новый документ» или «Шаблон», которое можно найти через «Новый» -> «Документ» -> «Мои шаблоны»

.

Я вижу, что могу добавить настраиваемую вкладку, альтернативную в Word 2010. Но у меня уже есть настраиваемая вкладка, добавленная с помощью редактора настраиваемого пользовательского интерфейса для Microsoft Office. Но это не проявляется при попытке настроить ленту. Я также попытался записать макрос и просто открыть окно, где вы выбираете, какой шаблон вы хотите открыть. Но он не записал действие, которое делает окно действительно видимым.

Есть идеи?

1 Ответ

1 голос
/ 12 августа 2011

Да, это возможно, хотя представление Backstage в Word 2010 делает это немного сложным. По сути, Word поставляется со многими встроенными макросами, которые управляют его командами и доступны через VBA. Эти команды можно найти, открыв вкладку Developer , нажав кнопку Macros и изменив меню Macros в: диалогового окна Macros для отображения команд Word. :

enter image description here

Чтобы получить доступ к диалоговому окну Мои шаблоны через VBA, используйте этот код:

Application.Run MacroName:="FileNewDialog"
SendKeys "%NM"

FileNewDialog получает доступ к существующему макросу Word для отображения представления Backstage, а Sendkeys использует клавиши Alt-key для маневрирования и открытия диалогового окна «Мои шаблоны» (см. Запись справки Word 2010 VBA для получения дополнительной информации о SendKeys). Поместите код в Sub и создайте кнопку QAT или Ribbon для выполнения, и все будет хорошо.

Важное замечание о тестировании SendKeys : SendKeys не может быть протестирован путем пошагового выполнения кода в IDE VBA, поскольку нажатия клавиш, которые он отправляет при запуске, отправляются активному окну во время выполнения (что может привести к быть окном разработки VBA). Чтобы протестировать SendKeys, сохраните макрос и прикрепите его к кнопке QAT, которую можно при необходимости нажать для тестирования.

...