Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Word.Application   Найти похожие ветки 

 
MisteRR ©   (2004-07-13 10:42) [0]

Здравствуйте, уважаемые Мастера!
Прошу прощения за наверняка избитый вопрос, однако, найти работающий пример мне не удалось. В чем беда мне самому понять тоже не удалось.
************************************
Хочется сформировать пакет документов, которые представляют из себя бланки и каждый раз в них подставляется различная информация (ФИО, адрес и т.п.).
В силу ряда причин наиболее простое решение хранить бланки в виде Word-документов. Места для подстановки обозначить закладками.
************************************
Var Wrd : Variant;

Wrd := CreateOleObject("Word.Application");
Wrd.Visible := True;
Wrd.Documents.Open("C:\123.doc");

Далее пробовал различные способы обращения к соответствующему объекту (Bookmark), но все время получал ошибку.

Wrd.ActiveDocument.BookMarks("Bookmark1").Range := "123456";

Wrd.ActiveDocument.BookMarks(0).Range := "123456";

Wrd.ActiveDocument.BookMarks["Bookmark1"].Range := "123456";

Первый вариант железно срабатывает в родной среде (Excel, Access).
Господа, может кто подскажет, что я делаю не так?


 
KSergey ©   (2004-07-13 11:40) [1]

Вроде на этом сайте я и видел про использование закладок в шаблонах ворда.. с примерами....


 
MisteRR ©   (2004-07-13 14:55) [2]

Я, честно говоря, и на этом сайте поискал, но нашел примеры работы только с объектом Word.Basic. С ним дела обстоят еще сложнее. У меня нет таже описания его объектов, методов, свойств.
Никто не пользуется такими вещами?


 
KSergey ©   (2004-07-13 15:14) [3]

тогда можно тут еще посмотреть

http://www.delphikingdom.com/asp/itemq.asp?mode=1&itemid=3

А вообще яндекс - и давно бы нашли все что нужно
http://delphiworld.narod.ru/_tech_.html
Там раздел отдельно про автоматизацию MS Office. И про закладки.

А так ж все статьи из раздела обязательно прочитать!!! Хотя бы заголовки ;)
http://www.delphikingdom.com/asp/section.asp?ID=16


 
evvcom ©   (2004-07-13 15:56) [4]

В Word и Excel есть удобная веСЧь "Запись макроса". Вот какой макрос получился для поиска закладки:
   Selection.GoTo What:=wdGoToBookmark, Name:="Закладка"
   With ActiveDocument.Bookmarks
       .DefaultSorting = wdSortByName
       .ShowHidden = False
   End With
Теперь экспериментируй.


 
MisteRR ©   (2004-07-13 16:45) [5]

KSergey, огромное человеческое спасибо!
Вот уж эти приведения типов и всякая такая тупнина примитивщина VB! Для Delphi нужно указывать класс Item, потомок Bookmark, а VB и без этого хорошо, оказывается...


 
YurikGL ©   (2004-07-13 21:02) [6]


> MisteRR ©   (13.07.04 10:42)  


> Места для подстановки обозначить закладками.

Пример с закладками я приводил, но его не помню т.к. писал на основе макроса VBA.

По сабжу, делал аналогичные вещи. Метода такова.
1) Создаем бланк с расширением, например *.do_, что бы во ворде ничего не испортили.
2) В бланке в нужных местах делаем объекты типа надпись и через макрос ищем их названия и как в них текст занести.
3) В делфи вставляем код из VBА и изменяем что надо.

Такой способ подходит, когда нужно вставлять мало текста, например для формирования титульного листа или колонтитулов.

Способ с закладками реализуется тоже легко.


 
European   (2004-07-13 23:53) [7]

Как-то раньше я пытал Мастеров по поводу работы с Вордом, однако многие вопросы так и были без ответов. А потом я начал пользоваться записью макросов, как советовали ранее, и многие вопросы отпали



Страницы: 1 вся ветка

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
14-1089318984
urisan
2004-07-09 00:36
2004.07.25
проблемы с установкой delphi 8


14-1089197485
mfender
2004-07-07 14:51
2004.07.25
Беда с ICQ


3-1088487606
Ярослав
2004-06-29 09:40
2004.07.25
Массивы в IB


3-1088677670
Sadovoy
2004-07-01 14:27
2004.07.25
Не могу задать перекрёстные ссылки


3-1088508416
DSKalugin
2004-06-29 15:26
2004.07.25
Программная Индексация DBase III