Синтаксис для автоматизации Word в C # - PullRequest
3 голосов
/ 10 ноября 2010

Я пытаюсь создать сильно отформатированный документ Word в C # с помощью Word Automation.У меня проблемы с поиском синтаксиса для многих операций, которые я хотел бы выполнить.Я попытался использовать способность Word создавать макросы, а затем использовать полученный код для создания того, что мне нужно, но поскольку макросы написаны на Visual Basic, и у меня возникают проблемы с «переводом» его на C #.Есть ли хранилище для синтаксиса Word Automation?Я знаком с учебными пособиями, доступными на веб-сайте Microsoft.

Ответы [ 5 ]

5 голосов
/ 10 ноября 2010

Проверьте эту ссылку: она охватывает много тем.

Word Automation с использованием C #

1 голос
/ 10 ноября 2010

Используйте ссылку на модель Word COM.Вот для Word 2007:

http://msdn.microsoft.com/en-us/library/bb225019%28office.12%29.aspx

У меня были подобные проблемы с Excel, и ничто не сравнится с хорошей книгой!(для Excel я использую «Программирование Excel с VBA и .NET» от O'Reilly).

0 голосов
/ 15 мая 2011

Отличное место для начала - Справочник разработчика Word VBA.Объектная модель Word не меняется только потому, что вы используете C #, поэтому вы можете узнать, что делают объекты в VBA, а затем, когда вы переходите на C #, вам только (в основном) необходимо изучить синтаксические различия.Особенно с VS 2010 и динамикой, вам не нужно делать так много, как раньше, и код больше похож на VBA (в некотором смысле).

Попробуйте Word DeveloperРесурсный центр для всех вещей Word Developer.

0 голосов
/ 10 ноября 2010

ИМХО, нет лучшего эталона, чем сам рекордер макросов. Если у вас возникли проблемы с переводом VB на C #, этот справочный лист может быть полезен:

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

Если вы используете C # 3.5 или менее, AFAIK нет простого способа пропустить параметры при вызове функций из любого из объектов Word в Word. В этом случае для этой задачи может оказаться альтернативой использование VB.NET вместо C #.

0 голосов
/ 10 ноября 2010
...