СообЧа > База Знаний > Программирование > Delphi

Вопрос

Как программно осуществить заполнение полей формы MS Word?

Ответ

При помощи следующего кода:

uses
    ComObj;

procedure TForm1.Button1Click(Sender: TObject);
var
    WordApp: OLEvariant;
begin
    Screen.Cursor := crHourglass;
    try
   // Create Word Instance
   WordApp := CreateOleObject('Word.Application');
    except
   ShowMessage('Не могу запустить MS Word.');
   Screen.Cursor := crDefault;
        Exit;
    end;

    try
   // Открыть документ Word'а
   WordApp.Documents.Add(Template := 'C:\TestDoc.doc');
        // Показать Word
   WordApp.Visible := True;
// Проверка на существование FormField и связаность с текстом
if WordApp.ActiveDocument.Bookmarks.Exists('YourFormFieldName') then
WordApp.ActiveDocument.FormFields.Item('YourFormFieldName').Result := 'Ваш текст';
    finally
        WordApp := Unassigned;
   Screen.Cursor := crDefault;
    end;
end;

Из конференции Delphi



Copyright © 2000-2004 Сообщество Чайников
Контактная информация