Как заполнить поля формы в 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 прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: OLE Automation MSOffice ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |