Идёт загрузка страницы...

htp://aptem.net.ru





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

Я обнаружил, что следующий код работает хорошо в связке Delphi -> Word 97 (с использованием поля "Закладки" в Word):


    ..
..
..


implementation

uses
OleAuto;
..
..
..

var

V : Variant ;

..
..
..

V := 0; // не забудьте инициализировать переменную

..
..
.. другие функции



if V = 0 then
begin
V := CreateOLEObject('Word.Application');
V.WordBasic.AppShow;
end;

// данный пример показывает технологию заполнения полей
// некой закладки в "стандартном письме" с помощью запроса,
// выполненного прежде в модуле данных pnm_data (OK,
// надо было бы использовать блок with...!)
V.WordBasic.Fileopen('Имя вашего документа Word');
V.WordBasic.EditBookmark('Заголовок',0,0,0,1);
V.WordBasic.Insert(Title);
V.WordBasic.EditBookmark('Имя',0,0,0,1);
V.WordBasic.Insert(FirstName + ' ');
V.WordBasic.EditBookmark('Фамилия',0,0,0,1);
V.WordBasic.Insert(pnm_data.ContactsQuery1Fam_Name.AsString + ' ');
V.WordBasic.EditBookmark('Адрес1',0,0,0,1);
V.WordBasic.Insert(pnm_data.ContactsQuery1Address1.AsString + ' ');
V.WordBasic.EditBookmark('Адрес2',0,0,0,1);
V.WordBasic.Insert(pnm_data.ContactsQuery1Address2.AsString + ' ');
V.WordBasic.EditBookmark('Адрес3',0,0,0,1);
V.WordBasic.Insert(pnm_data.ContactsQuery1Address3.AsString + ' ');
V.WordBasic.EditBookmark('Заголовок1',0,0,0,1);
V.WordBasic.Insert(Title);
V.WordBasic.EditBookmark('Фамилия1',0,0,0,1);
V.WordBasic.Insert(pnm_data.ContactsQuery1Fam_Name.AsString + ' ');

(Вы могли бы также использовать команду V.WordBasic.PrintDefault,
если вы хотите напечатать ваш документ... и множество других команд,
типа сохранения, смены шрифта и т.д.)

....другое

[000192]