Можно ли с помощью автоматизации Word узнать, содержит ли активный документ код VBA? - PullRequest
0 голосов
/ 24 августа 2011

Используя Word Automation, я хочу сохранить активный документ программно. В Office 2007/2010 документ должен быть явно сохранен как «макрос включен», чтобы сохранить любой код VBA в этом документе.

Вместо того, чтобы просить пользователя выбрать, я бы хотел, чтобы мое приложение могло определить, есть ли код VBA в активном документе. Это возможно?

1 Ответ

0 голосов
/ 30 августа 2011

Да, это можно определить с помощью свойства HasVBProject.Например:

If ActiveDocument.HasVBProject = True Then

    'Code to save as .dotm

Else

    'Code to save as .dotx

End If

Для тех, кто может наткнуться на этот пост позже, стоит отметить, что этот код следует размещать за пределами тестируемого документа на наличие макросов (в противном случае он обнаружил бы себя).Два часто используемых параметра - доступ к коду из внешнего приложения или из шаблона, хранящегося в папке автозагрузки Word.

...