Определить / найти макропеременные Word в документе - PullRequest
0 голосов
/ 04 марта 2020

Я знаком с VBA и Excel, но я только начинаю с VBA и Word.

Я унаследовал документ Word с макросами и должен его обновить.

Например, , он имеет следующую процедуру:

Sub ClientName(CLINAME as String)

Me.ClientInfoNameText.Value = CLINAME

End Sub

Когда я запускаю его, текстовое поле в документе обновляется.

Как я могу сказать, что это текстовое поле называется «ClientInfoNameText»?

Есть ли команда / интерфейс, который может показать все переменные, определенные в документе, и на что они ссылаются?

Я исследовал, но не могу найти ответ на этот конкретный вопрос /situation.

Спасибо

1 Ответ

0 голосов
/ 08 марта 2020

Код в вопросе должен быть в модуле ThisDocument проекта VBA документа. Модуль ThisDocument - это модуль класса , представляющий документ - это эквивалент модулей ThisWorkbook и Sheet# в проекте Excel. Когда объект ThisDocument имеет фокус, вы увидите свойства документа в окне свойств редактора VBA, например:

enter image description here

Me относится к документу, содержащему код VBA при использовании в модуле кода ThisDocument . (Так же, как это относится к пользовательской форме при использовании в модуле кода пользовательской формы.)

Объекты ActiveX , такие как элементы управления UserForms на поверхности документа, «подключаются» к ThisDocument объект - они сами становятся объектами класса ThisDocument. Таким образом, рассматриваемый код обращается к текстовому полю ActiveX на поверхности документа, содержащего код VBA.

Список таких объектов можно просмотреть в раскрывающемся списке Object окна кода редактора VBA * 1028. * когда фокус находится в ThisDocument:

enter image description here

Их также можно увидеть в списке свойств, когда фокус находится в ThisDocument.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...