Мне нужно использовать пространство имен Microsoft.Office.Interop.Word для извлечения, если документ Word содержит макросы и какие. Документация MSDN для этого пространства имен не дает большой информации по сравнению с документацией на других .Net-классах. Где я могу получить дополнительную информацию об этих пространствах имен (примеры, полная документация и т. Д.). Я уже искал в Google и SO, но не очень много информации.Документация Microsoft.Office.Interop.Word
ответ
Здесь вы можете узнать больше об этом для Office 2007/Office 2010: http://msdn.microsoft.com/en-us/library/dd925808.aspx
Microsoft.Vbe.Interop
это пространство имен для VBA. (VBE is 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.
Ожидайте исключения «Программный доступ к Visual Basic Project не заслуживает доверия». когда вы попробуете это. Google сообщение об ошибке для получения дополнительной информации. (Вы также найдете, что некоторые люди пытаются сделать то же самое, что и вы!) – MZB
Вы можете изменить это через макросохранение на вкладке «Доверенные издатели». Более того, добавление сертификата в проект с надлежащей настройкой макроса безопасности обходит это сообщение. – AMissico
Основная часть документации находится в файле справки VBA, который поставляется с Microsoft Word - для Microsoft Word 2003 ищет файл VBAWD10.CHM. Также проверьте Microsoft Office Visual Basic Reference (VBAOF11.CHM)
10 и 11 в приведенных выше номерах Word и Office версии - поэтому ваш пробег будет отличаться в зависимости от версии Word, которую вы установили. Кроме того, именование несовместимо во всех версиях Word, поэтому поиск всего VBA * .CHM, вероятно, заставит большую часть необходимой вам документации.
Это ответит на большинство ваших вопросов по API Word.
Невозможно увидеть очевидный способ поиска списка макросов в открытом документе или шаблоне, однако ... Пожалуйста, добавьте комментарий к этому ответу, если вы найдете метод, так как мне было бы интересно узнать ,
(Обратите внимание, что каждый вызов может вызывать исключение при использовании Word interop. Если Word имеет , то любое модальное диалоговое окно будет иметь, например, исключение.
@unknown - Если вы собираетесь что-то проголосовать, подсказка о том, почему ответ был бесполезным, был бы полезен. (Сделав что-то очень похожее на @ rold2007 и искал ту же документацию, мне было бы интересно узнать, есть ли лучший источник информации). – MZB
Как говорит @AMissico, свойство Application.VBE может быть местом для поиска. – MZB
Только гадать, так как есть только один ответ на этот вопрос. Я думаю, что голосующий голос связан с ссылкой на ссылки на объектную модель Office и Word, а не на ссылки VBA/VBE. Более того, возможно, потому, что вы ссылаетесь на VBA вместо .NET Namespace. – AMissico
Нет хорошей документации. Единственными ресурсами являются MSDN (тихое плохое) и некоторые блоги. Возможно, вы можете найти информацию здесь: http://blogs.msdn.com/mshneer/
Правильный ответ - проверить свойство Document.HasVBProject.
Процитировать в разделе «Примечания»: «Это свойство наиболее полезно при программном определении необходимости сохранения документа в формате файла с поддержкой макроса. Если сохранено в другом формате, макросы и проекты кода, содержащиеся в документе, могут Потерянный."
- 1. IIS + microsoft.Office.Interop.Word
- 2. asp.net Microsoft.Office.Interop.Word
- 3. Использование Microsoft.Office.Interop.Word
- 4. C# Microsoft.Office.Interop.Word
- 5. Сортировка Microsoft.Office.Interop.Word в C#
- 6. Использование Microsoft.Office.Interop.Word в asp.net
- 7. Microsoft.Office.Interop.Word ссылка не найдена
- 8. Не удалось загрузить Microsoft.Office.Interop.Word
- 9. События изменения в Microsoft.Office.Interop.Word
- 10. не может использовать Microsoft.Office.Interop.Word
- 11. Word count using Microsoft.Office.Interop.Word
- 12. Microsoft.Office.Interop.Word Слушайте на сэкономленные собственности
- 13. Добавить Microsoft.Office.InterOp.Word, используя ссылку C#
- 14. DOCX to RTF без Microsoft.Office.Interop.Word
- 15. SynonymInfo [] Для Microsoft.Office.Interop.Word в C#
- 16. microsoft.office.interop.word не отображается в ссылках
- 17. Microsoft.Office.Interop.Word, как остановить открытие файла
- 18. Документация Google Movie Showtimes Документация
- 19. Документация Gpx или документация GPX
- 20. Не можете найти Microsoft.Office.Interop.Word в Контрольном списке
- 21. Как НЕ сохранить документы с помощью microsoft.office.interop.word
- 22. только первая страница доступна в Microsoft.Office.Interop.Word
- 23. Microsoft.Office.Interop.Word with C# - Определить существующее оглавление Объект
- 24. Алиас для Microsoft.Office.Interop.Word имен не recogized
- 25. Предупреждение CS0467 при использовании '' Microsoft.Office.Interop.Word._Document.Close
- 26. Ссылка Microsoft.Office.Interop.Word отсутствует и решение не найдено
- 27. необычного решения имен Microsoft.Office.Interop.Word в .NET ASP.NET
- 28. microsoft.office.interop.word dll (2007/2010) issues/C# .net
- 29. Microsoft.Office.Interop.Word утечка памяти в файле создания
- 30. C# .NET Web Service Microsoft.Office.Interop.Word Crash
Какая версия Office? –
@ rold2007: просто хочу зарегистрироваться, чтобы узнать, отвечает ли ответ на ваш вопрос. –
@ Otaku: Три ответа до сих пор интересны, но разработка для этого приложения еще не началась, поэтому я не могу сказать, осуществимо ли то, что мне нужно для разработки, или нет. Я отправлю сообщение здесь, когда мои тесты будут выполнены. – rold2007