Microsoft.Office.Interop.Word документация - PullRequest
7 голосов
/ 02 марта 2010

Мне нужно использовать пространство имен Microsoft.Office.Interop.Word, чтобы извлечь, если документ Word содержит макросы и какие. Документация MSDN для этого пространства имен не дает много информации по сравнению с документацией по другим классам .Net. Где я могу получить больше информации об этих пространствах имен (примеры, полная документация и т. Д.). Я уже искал в Google и SO, но не очень много информации.

Ответы [ 5 ]

3 голосов
/ 26 июня 2012

Правильный ответ - проверить свойство Document.HasVBProject .

Цитата из раздела «Примечания»: «Это свойство наиболее полезно при программном определении необходимости сохранения документа в формате файлов с поддержкой макросов. Если оно сохранено в другом формате, макросы и проекты кода, содержащиеся в документе, потерял ".

3 голосов
/ 23 марта 2010

Хорошей документации нет. Единственными ресурсами являются MSDN (тихо плохо) и некоторые блоги. Может быть, вы можете найти некоторую информацию здесь: http://blogs.msdn.com/mshneer/

2 голосов
/ 02 марта 2010

Здесь вы можете узнать больше об этом для Office 2007 / Office 2010: http://msdn.microsoft.com/en-us/library/dd925808.aspx

0 голосов
/ 11 марта 2010

Основная часть документации находится в файле справки VBA, который поставляется вместе с Microsoft Word - для Microsoft Word 2003 ищите файл VBAWD10.CHM. Также проверьте справочник по Microsoft Office Visual Basic ( VBAOF11.CHM )

10 и 11 в приведенном выше номере - это номера версий Word и Office, поэтому пробег зависит от установленной версии Word. Кроме того, наименование не согласовано во всех версиях Word, поэтому поиск по всему VBA * .CHM, вероятно, найдет большую часть необходимой документации.

Они ответят на большинство ваших вопросов о Word API.

Не вижу очевидного способа найти список макросов в открытом документе или шаблоне, однако ... Пожалуйста, добавьте комментарий к этому ответу, если вы найдете метод, как мне было бы интересно узнать.

(Обратите внимание, что каждый вызов может вызывать исключение при использовании взаимодействия Word. Если в Word открыто любое модальное диалоговое окно , вы получите, например, исключение. Запрограммируйте соответственно).

0 голосов
/ 05 марта 2010

Microsoft.Vbe.Interop - это пространство имен для VBA. (VBE - это Visual Basic для расширяемости приложения 5.3 .) Ключевые слова, которые помогут вам в поиске: VBProject, VBComponent и CodeModule.

MSDN Поиск VBProject поможет вам начать. http://social.msdn.microsoft.com/Search/en-US?query=VBProject&ac=8.

Следующая статья предназначена для VBA, но она легко конвертируется. WD2000: образец макроса для возврата имени макроса и процедуры в http://support.microsoft.com/kb/262961.

...