本文主要通过简单的示例来说明使用 Delphi|Lazarus 开发工具进行 Office Automation 的操作,以 WPS 表格为例来描述。
示例:【Hello world 之 WPS 表格】使用 Delphi/Lazarus 打开 WPS 创建表格并在第一个单元格输入“Hello world”。
首先创建项目,在窗体中添加一个按钮“Hello world 之 WPS 表格”,在 Form 类中增加私有成员:
WpsApp: variant; // Wps 应用程序
WorkBook: variant; // Excel 工作薄
在 uses 部分添加 Comobj 单元;
编辑按钮的单击事件:
procedure TFormMain.WpsButtonClick(Sender: TObject);
begin
try
WpsApp := CreateOleObject('Ket.Application');
except
ShowMessage('没有安装wps');
Exit;
end;
WpsApp.Visible := True;
WorkBook:=WpsApp.WorkBooks.Add;
WorkBook.WorkSheets[1].activate;
WorkBook.WorkSheets[1].Cells[1,1] := 'Hello world!';
WorkBook.SaveAs('e:hello.xlsx');
end;
注:WPS 文字应用的名称为 Ket.Application,特别重要!
窗体的 Destroy 事件:
procedure TFormMain.FormDestroy(Sender: TObject);
begin
WorkBook.Close;
WpsApp.Quit;
end;
运行程序,结果如下图: