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

Вниз

Отчет в MS Word   Найти похожие ветки 

 
elfebet ©   (2006-01-16 12:30) [0]

Прочитал на этом сайте тему про "Отчет в MS Word", ни один вариант не подошел (не работает). Задача состоит в том, чтобы текст подставлялся в определённые места документа Word через закладки.
Пишу такой код:

var W: Variant;
...
W:=CreateOleObject("Word.Application");
W.WordBasic.FileOpen("C:\document.doc");
W.WordBasic.StartOfDocument;
W.ActiveDocument.Bookmarks("num").Select;
W.WordBasic.Insert("new text");

Выдает ошибку в строке:
W.ActiveDocument.Bookmarks("num").Select;
пробовал:
W.EditGoto("num");
и
W.EditBookmark("num");
не работает.
Погмогите плиз, очень надо.


 
asafr ©   (2006-01-16 13:36) [1]

текст ошибки, пжлст....


 
Kot_   (2006-01-16 13:42) [2]

Попробуй не через закладки, а заменением определенных кодов.
Например @дата@ мненяем на нужную дату.


 
evvcom ©   (2006-01-16 13:50) [3]


> Выдает ошибку в строке:
> W.ActiveDocument.Bookmarks("num").Select;

А у тебя есть в Ворде такая закладка? Или ты думаешь, что Билл Гейтс во все новые документы такую закладку внедряет?


 
elfebet ©   (2006-01-16 13:56) [4]

Такая закладка есть. Выдает ошибку "Bookmarks не является методом"


 
elfebet ©   (2006-01-16 14:20) [5]

Я нашел способ решения задачи. Честно горовя этот способ мне кажется неправильным, но работает.

var W: Variant;
    R: OleVariant;
...
W:=CreateOleObject("Word.Application");
W.WordBasic.FileOpen("C:\document.doc");
W.Visible:=true;
R:= W.ActiveDocument.Bookmarks.Item("num").Range;
R.InsertAfter("new text");


 
evvcom ©   (2006-01-16 14:36) [6]


> W.WordBasic.FileOpen("C:\document.doc");

По-моему, обычно используют
W.Documents.Open
InsertAfter applies to Range Object and Selection Object. Так что вполне нормальный способ решения.
P.S.

> var W: Variant;
>     R: OleVariant;

А чего это ты их разными типами сделал? Используй везде OleVariant;


 
elfebet ©   (2006-01-16 14:45) [7]

сэнкс



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

Форум: "Основная";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
15-1137654352
WondeRu
2006-01-19 10:05
2006.02.12
Составление 3D-карты из двух аэро(космо)фотоснимков.


2-1138139657
Макс5
2006-01-25 00:54
2006.02.12
БД в Delphi


15-1137727459
Репортер
2006-01-20 06:24
2006.02.12
Отчеты с графикой и текстом


15-1137730196
Думкин
2006-01-20 07:09
2006.02.12
Jeer с днем тебя человечище.


3-1134563319
Den47
2005-12-14 15:28
2006.02.12
Кто работал с TDBF?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский