var
MyDoc,WordApp : Variant;WordApp:=null;
MyDoc:=null;
WordApp:=GetActiveOleObject('Word.application');
MyDoc := WordApp.ActiveDocument;procedure TWordForm.FillDataToGrid(FieldList,DataList : Tstringlist);
var
i,FillIndex : Integer;
FillField,Fieldtext : string;
begin
//WordFields := FieldList;
//DataFields := DataList;
WordField.clear;
DataField.clear; WordField.Add('仪器型号'); //书签
DataField.Add('东芝ssa'); //书签值
WordField.Add('姓名'); //书签
DataField.Add('BBB); //书签值
WordField.Add('性别');
DataField.Add('男'); WordField.Add('年龄');
DataField.Add('111');
WordField.Add('登记号');
DataField.Add('22222222222222');
WordField.Add('来源');
DataField.Add('BBBB); WordField.Add('申请部门');
DataField.Add('让他也让他');
WordField.Add('圆号);
DataField.Add('222法国');
WordField.Add('个案号);
DataField.Add('心脏衰竭;'); WordField.Add('价格');
DataField.Add('69');
WordField.Add('test);
DataField.Add('水电费等收费电视');
for i := 1 to MyDoc.BookMarks.Count do //word书签数
begin
try
FillField := MyDoc.Books.Item(i).Name; //取出书签名字
FillIndex := WordField.IndexOf(FillField);
if (FillIndex >-1) and (FillIndex<DataField.Count) then
Fieldtext := DataField.Strings[FillIndex] //从DataList中取出匹配的数值
else
Fieldtext := '';
try
MyDoc.Application.Selection.goto(What := wdGoToBook, Name := FillField);
MyDoc.Application.Selection.InsertAfter(Fieldtext);
except
end;
except
end;
end;
end;
在此运行的时候报地址错误,但是具体却看不出问题出在那里。在Word表格中设置书签,专家们给看看问题到底出在那里?
office版本为2003,Delphi7
MyDoc,WordApp : Variant;WordApp:=null;
MyDoc:=null;
WordApp:=GetActiveOleObject('Word.application');
MyDoc := WordApp.ActiveDocument;procedure TWordForm.FillDataToGrid(FieldList,DataList : Tstringlist);
var
i,FillIndex : Integer;
FillField,Fieldtext : string;
begin
//WordFields := FieldList;
//DataFields := DataList;
WordField.clear;
DataField.clear; WordField.Add('仪器型号'); //书签
DataField.Add('东芝ssa'); //书签值
WordField.Add('姓名'); //书签
DataField.Add('BBB); //书签值
WordField.Add('性别');
DataField.Add('男'); WordField.Add('年龄');
DataField.Add('111');
WordField.Add('登记号');
DataField.Add('22222222222222');
WordField.Add('来源');
DataField.Add('BBBB); WordField.Add('申请部门');
DataField.Add('让他也让他');
WordField.Add('圆号);
DataField.Add('222法国');
WordField.Add('个案号);
DataField.Add('心脏衰竭;'); WordField.Add('价格');
DataField.Add('69');
WordField.Add('test);
DataField.Add('水电费等收费电视');
for i := 1 to MyDoc.BookMarks.Count do //word书签数
begin
try
FillField := MyDoc.Books.Item(i).Name; //取出书签名字
FillIndex := WordField.IndexOf(FillField);
if (FillIndex >-1) and (FillIndex<DataField.Count) then
Fieldtext := DataField.Strings[FillIndex] //从DataList中取出匹配的数值
else
Fieldtext := '';
try
MyDoc.Application.Selection.goto(What := wdGoToBook, Name := FillField);
MyDoc.Application.Selection.InsertAfter(Fieldtext);
except
end;
except
end;
end;
end;
在此运行的时候报地址错误,但是具体却看不出问题出在那里。在Word表格中设置书签,专家们给看看问题到底出在那里?
office版本为2003,Delphi7
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货