在Delphi中使用CreateOleObject方法对WORD文件进行操作

猫猫雨晒洋洋

猫猫雨晒洋洋

2016-02-19 19:32

下面是个在Delphi中使用CreateOleObject方法对WORD文件进行操作教程,撑握了其技术要点,学起来就简单多了。赶紧跟着图老师小编一起来看看吧!
 

  使用CreateOleObject方法对WORD文档操作具有先天所具备的优势,与delphi所提供的那些控件方式的访问相比,CreateOleObject方法距离WORD核心的操作“更近”,因为它直接使用OFFICE所提供的VBA语言对WORD文档的操作进行编程。

  以下是我在本机上所做的实验,机器软件配置如下:

  Windows XP+delphi7.0+OFFICE 2003

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  这个程序很简单,在页面上放置了一个edit和一个button,每单击一次按钮,就会自动把edit中的内容添加在后台中的word文档中,程序关闭时文件自动保存在当前程序的主目录中。

  unit main;

  interface

  //如果要使用CreateOleObject的办法对WORD文档进行操作,应该在uses
  //语句中加入Comobj声明和WordXP声明
  uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Comobj, WordXP, Dialogs, StdCtrls;

  type
    TForm1 = class(TForm)
      Button1: TButton;
      Edit1: TEdit;
      procedure Button1Click(Sender: TObject);
      procedure FormCreate(Sender: TObject);
      procedure FormClose(Sender: TObject; var Action: TCloseAction);
  //    procedure Button2Click(Sender: TObject);
    private
      { Private declarations }
    public
      { Public declarations }
    end;

  var
    Form1: TForm1;
    //把这两个变量声明为全局变量
    FWord: Variant;
    FDoc: Variant;

  implementation

  {$R *.dfm}

  procedure TForm1.Button1Click(Sender: TObject);
  begin
  FWord.Selection.TypeParagraph;
  FWord.Selection.TypeText(Text := form1.Edit1.Text);
  end;

  
  procedure TForm1.FormCreate(Sender: TObject);
  begin
  //首先创建对象,如果出现异常就作出提示
  try
  FWord := CreateOleObject('Word.Application');
  //WORD程序的执行是否可见,值为False时程序在后台执行
  FWord.Visible := False;
  except
  ShowMessage('创建word对象失败!');
  Exit;
  end;

  //先在打开的Word中创建一个新的页面,然后在其中键入"Hello,"+回车+"World!"
  try
  FDoc := FWord.Documents.Add;
  FWord.Selection.TypeText(Text := 'Hello,');
  FWord.Selection.TypeParagraph;
  FWord.Selection.TypeText(Text := 'World! ');

  except
  on e: Exception do
  ShowMessage(e.Message);
  end;
  end;

  //在程序关闭时把文件内容保存到当前目录中,并以test.doc命名
  //同时关闭WORD程序
  procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
  begin
  FDoc.SaveAs(ExtractFilePath(application.ExeName) +'test.doc');
  FWord.Quit;
  FWord := Unassigned;
  end;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  end.

  此外,对OFFICE其他文件的操作都比较类似,不在赘述。通过对WORD文件中更复杂的VBA宏的引用,这个方法还可以完成更复杂的文档操作。

展开更多 50%)
分享

猜你喜欢

在Delphi中使用CreateOleObject方法对WORD文件进行操作

编程语言 网络编程
在Delphi中使用CreateOleObject方法对WORD文件进行操作

Delphi中使用OLE方法操作Excel

编程语言 网络编程
Delphi中使用OLE方法操作Excel

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Delphi中使用资源文件

编程语言 网络编程
Delphi中使用资源文件

怎样在vc、delphi中使用mysql

编程语言 网络编程
怎样在vc、delphi中使用mysql

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

word2018中使用内容控件对输入位置进行提示

word
word2018中使用内容控件对输入位置进行提示

在Word中使用函数计算

word
在Word中使用函数计算

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

输入10以上带圈字符则可以通过“带圈字符”功能来实现

输入10以上带圈字符则可以通过“带圈字符”功能来实现

Delphi编写数据库程序要点

Delphi编写数据库程序要点
下拉加载更多内容 ↓