Извлечение информации о пулях и таблицах в Word doc из c # - PullRequest
0 голосов
/ 14 июня 2010

Мне нужно создать документ Word на основе шаблона в C #.У меня есть теги только для абзацев.Можно ли заменить маркеры и таблицы, которые уже доступны в шаблоне, на основе пользовательского ввода.

Мне удалось заменить абзац вводимым текстом с помощью команды «Заменить» в Word InterOp.

Нужна помощь для выполнения остальных пунктов.

  1. Заменить маркеры на основе ввода пользователя
  2. Заполнить таблицы введенными значениями

Код для замены абзаца на основе тега:

FindAndReplace(wordApplication, "/date/", DateTime.Now.Date.ToString("MMM dd, yyyy"));

FindAndReplace(){

    wordApplication.Selection.Find.Execute(ref findText,
            ref matchCase, ref matchWholeWord, ref matchWildCards, ref matchSoundsLike,
            ref matchAllWordsForms, ref forward, ref wrap, ref format, ref replaceWithText, ref replace, ref matchKashida,
            ref matchDiacritics, ref matchAlefHamsa, ref matchControl);

}

Заранее спасибо.ASAP

1 Ответ

2 голосов
/ 14 июня 2010

Я бы предложил поместить закладки в документ Word и использовать их для назначения данных.

object oBookMark = "MyBookmark";
oWordDoc.Bookmarks.Item(ref oBookMark).Range.Text = "Some Text Here";

Вы можете заполнять таблицы, используя этот метод, и я думаю, вы должны быть в состоянии заполнить маркеры.

Это общепринятый способ программного заполнения шаблона Word. Сопоставление строк трудно писать и поддерживать точно, и может легко привести к неожиданным результатам. С помощью закладки вы знаете, какие данные вы назначаете и куда именно они направляются.

Взгляните на этот проект Coderush .

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