请求的成员不存在?Delphi6使用Word 2013创建数据源
我们有一个在Delphi2006上运行的系统,它创建了一个Word数据源,我们尝试了许多资源,但似乎找不到任何对我们有帮助的东西。问题是我们的数据源没有创建多个列,这意味着它会给我们一个错误“请求的成员不存在”。请就这个问题提供一些见解,因为我们认为是Word 2013的格式给了我们一些问题请求的成员不存在?Delphi6使用Word 2013创建数据源,delphi,ms-word,automation,mailmerge,Delphi,Ms Word,Automation,Mailmerge,我们有一个在Delphi2006上运行的系统,它创建了一个Word数据源,我们尝试了许多资源,但似乎找不到任何对我们有帮助的东西。问题是我们的数据源没有创建多个列,这意味着它会给我们一个错误“请求的成员不存在”。请就这个问题提供一些见解,因为我们认为是Word 2013的格式给了我们一些问题 procedure Button1Click(Sender: TObject); private { Private declarations } public { Public d
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
WordApp, NewDoc, wrdMailMerge, wrdDataDoc: OleVariant;
implementation`enter code here`
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
WordApp := CreateOleObject('Word.Application');
NewDoc:=WordApp.Documents.Open('c:\temp\TempLetter.doc');
WordApp.Visible:= True;
wrdMailMerge:=NewDoc.MailMerge;
NewDoc.MailMerge.CreateDataSource('c:\temp\DataDoc.doc',,,'SUR_NME, FUL_NME, NAT_PER_DE, PLACE, BTH_DT');
wrdDataDoc:=WordApp.Documents.Open('c:\temp\DataDoc.doc');
wrdDataDoc.Tables.Item(1).Cell(2,1).Range.InsertAfter('arno');
wrdDataDoc.Tables.Item(1).Cell(2,2).Range.InsertAfter('venter');
wrdDataDoc.Tables.Item(1).Cell(2,3).Range.InsertAfter('SA');
wrdDataDoc.Tables.Item(1).Cell(2,4).Range.InsertAfter('ggggp');
wrdDataDoc.Tables.Item(1).Cell(2,5).Range.InsertAfter(Date);
wrdDataDoc.Save;
wrdDataDoc.Close(False);
wrdMailMerge.Execute(False);
NewDoc.Saved:=False;
NewDoc.Close(False);
enter code here
end;
end.
关于Delphi中的办公自动化,我强烈建议您在手动合并时在Word中录制宏,并查看Word为宏生成的VBA代码 一旦您获得了VBA代码,它与您在Delphi中处理问题的方式相比如何 有时,对于特定的Office对象成员,存在简单的拼写差异或路径,很难从Word文档中挑出 祝你好运