Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.07.25;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.037 c
14-1089125489
Piter
2004-07-06 18:51
2004.07.25
Принтер EPSON C42SX


14-1089057114
DeadMeat
2004-07-05 23:51
2004.07.25
Расписание


14-1088405291
Dmitriy O.
2004-06-28 10:48
2004.07.25
Кто появился ранше ?


14-1088776252
Rain
2004-07-02 17:50
2004.07.25
hbTAPI


4-1087040243
Alexis
2004-06-12 15:37
2004.07.25
Ошибка при работе с RegQueryValueEx





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский