我想通过Delphi应用程序在MSword中添加一些数据。互联网上有很多例子,但它们非常复杂。 有人可以帮助我使用一个接受字符串参数的简单函数,然后将该字符串附加到word文档中并将该文档保存到桌面
答案 0 :(得分:0)
下面是我能想到的使用Delphi创建Word文档的最简单示例。我提供这个只是为了让你开始,这样你就可以开始尝试一个有效的例子。尝试一下,然后阅读我给你链接的教程 - 我不打算将这个答案扩展到教程中。
当你开始阅读Delphi中的自动化时,你会发现有两种方法可以做到这一点,"早期绑定",你在那里使用通过导入自动化对象而得到的类#34;类型库"和"后期绑定",您使用变量而不是类实例来表示自动化对象。下面的示例使用后期绑定,因为它对于基本示例来说是最简单的。请注意,SaveAs
参数中的特殊命名参数语法(FileName:= xxx) Document.SaveAs(FileName := AFileName)
被添加到Delphi中以支持自动化对象的后期绑定。
除了像Deborah Pate这样的教程之外,学习Delpi自动化Word的基础知识的另一种方法是录制一个Word宏,它可以做你想要的,然后检查Word中的宏代码&#39 ; VB编辑器(在Word&#39的功能区的开发人员选项卡上) - 通常,将代码翻译成Delphi很简单。
unit SimpleWordu;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComObj, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
procedure CreateWordDoc;
protected
public
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
CreateWordDoc;
end;
procedure TForm1.CreateWordDoc;
var
UserName,
AFileName : String;
DocText : String;
MSWord,
Document : OleVariant;
begin
MSWord := CreateOleObject('Word.Application');
MSWord.Visible := True;
Document := MSWord.Documents.Add;
DocText := 'Hello Word!';
MSWord.Selection.TypeText(DocText);
UserName := 'MA';
AFileName := Format('c:\users\%s\desktop\worddoc.doc', [UserName]);
Document.SaveAs(FileName := AFileName);
end;
end.