Передача данных в макет MS Word

Пример, как передать данные в макет MS Word через свойства.

Навеяно вот этой обработкой. В ней автор ищет предопределенный текст в документе и заменяет его своим. Я же пользуюсь свойствами самого документа MS Word.

1. Создаем документ в Word.

2. Переходим в окно свойств документа (Файл -> Свойства -> Прочие)

3. Задаем имя свойства, тип и значение.

4. Вставляем получившееся свойство в текст.

Вставка -> Поле

В списке «Поля» выбираем «DocProperty». В списке «Свойство» выбираем наше свойство.

5. Сохраняем документ.

6. Добавляем документ в качестве макета Active Document

7. Как передать в него параметры смотрим в приложенной обработке

UPD 18.03.2010:

Добавил вариант передачи данных через переменные

Добавил вывод таблицы 

14 Comments

  1. Поручик

    С MSWord 2007 работает?

    Reply
  2. codewriter

    Сложно все это для простого пользователя Word — столько разных окошек открыть! А ведь именно простой пользователь будет заводить в системе новый шаблон. Да, а как быть с заполнением таблиц?

    Мы использовали свои метки в тексте документа Word типа [ОрганизацияНаименованиеПолноеСтрока] и делали механизм универсальным под разные версии Word.

    Reply
  3. Поручик

    (2) для простого пользователя Word «сложно всё и непонятно ничего».

    Реальное высказывание из моей коллекции дятлоюзерских отмазок.

    Reply
  4. codewriter

    (3) Вы программу пишите не для себя, а для пользователя. Грош цена той программы или конкретной фишки, которую не будут использовать пользователи в работе.

    Reply
  5. Alexsisit

    Отличная разработка, сам постоянно пользуюсь. Только не обязательно задавать поля а потом добавлять макет. Я обычно добавляю макет, в нужных местах вставляю нужную переменную (В списке «Поля» выбираем «DocVariable» и пишем произвольную переменную), затем присваиваем её нужной нам информацией и все.

    Reply
  6. Requiem

    (2) Изложенное в посте нужно воспринимать как альтернативный вариант и ничего более. Каждый выберет свой.

    (5) Да кстати, так даже проще.

    Reply
  7. Поручик

    (4) В таком случае грош цена всем убоищам made in 1S, возможности коих используются в основном, дай бог, процентов на 15.

    Reply
  8. Requiem

    (1) да, на 2007-м работает

    Reply
  9. zildar

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

    Reply
  10. SvetaTsp

    Киньте, пожалуйста, файлик на мыло titanoffice@mail.ru разработчику навеянной обработки.

    Reply
  11. SvetaTsp

    Спасибо. +

    Reply
  12. iones

    Здоровски!

    Теперь переделаю все договора!

    А то задолбал кадровик… то дорисовать, это дорисовать… пусть сама шаблон рисует.

    ставим плюсик

    Reply
  13. piskaryova

    Очень хороший примерчик.

    А может есть пример с экселем ?

    Reply
  14. endym

    (9) вот тут парочка примеров работы в Word c таблицами http://infostart.ru/public/65996/

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *