![]() |
![]() ![]() ![]() ![]() |
|
Как заполнить поля формы в MS WordDelphi , Технологии , OLE Automation MSOfficeАвтор: http://www.swissdelphicenter.ch
uses
ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
WordApp: OLEvariant;
begin
Screen.Cursor := crHourglass;
try
// Create Word Instance
WordApp := CreateOleObject('Word.Application');
except
ShowMessage('Cannot start MS Word.');
Screen.Cursor := crDefault;
Exit;
end;
try
// Open a Word Document
WordApp.Documents.Add(Template := 'C:\TestDoc.doc');
// Show Word
WordApp.Visible := True;
// Check if FormField exists and asign your text
if WordApp.ActiveDocument.Bookmarks.Exists('YourFormFieldName') then
WordApp.ActiveDocument.FormFields.Item('YourFormFieldName').Result :=
'Your Text';
finally
WordApp := Unassigned;
Screen.Cursor := crDefault;
end;
end;
Это код-набор на Delphi, демонстрирующий, как заполнить поля форм в документе Microsoft Word с помощью интерфейса автоматизации COM (Component Object Model). Вот разбивка того, что код делает:
Обратите внимание, что вам нужно заменить Вот альтернативное решение с более современным подходом: Вместо создания нового экземпляра приложения Word каждый раз, когда кнопка кликается, можно создать singleton-экземпляр, который сохраняется между несколькими использованиями. Это можно достичь с помощью класса Этот подход более эффективен и легче поддерживать, потому что вы не должны создавать экземпляр приложения Word каждый раз. Вы также можете добавить дополнительные функции в класс Статья описывает, как заполнить поля формы в MS Word с помощью программирования на языке Delphi, используя библиотеку ComObj и создавая офисное приложение Word. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: OLE Automation MSOffice ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||