如何用delphi操作word
1个回答
展开全部
一. 定义word应用程序,文档对象,比如:
wordApp: OleVariant;
wordDoc: OleVariant;
二. 打开word文档
wordApp := CreateOleObject('Word.Application');
wordDoc := WordApp.Documents.Open(FileName:=filename,
ReadOnly:= false, Revert:=True, Visible:= True);
WordApp.Visible := false;
三.表格插入数据
WordDoc.Tables.Item(TbIndex).cell(cellrow,cellcol).Range.InsertAfter(conStr);
四.在指定行写数据
WordDoc.Paragraphs.Item(16).Range.InsertAfter('abcd');
五.指定字符位置插入数据
MyRange: OleVariant;
MyRange := wordDoc.Range(Start:=0,End:=10);
MyRange.InsertAfter('abcd'+#13);
六.文件保存
wordDoc.SaveAs(filename);
七.连接word(联系:二打开文档)
//测试当前是否运行了word
try
v := getactiveoleobject(word.application);
except
//未运行则运行之
v := createoleobject(word.basic);
end; r /> try
//连接到word
wordapp.connect;
except
beep;
messagedlg(不能生成文档,请确认是否安装了word 2000!, mterror, [mbok], 0);
abort;
end;
//
wordApp: OleVariant;
wordDoc: OleVariant;
二. 打开word文档
wordApp := CreateOleObject('Word.Application');
wordDoc := WordApp.Documents.Open(FileName:=filename,
ReadOnly:= false, Revert:=True, Visible:= True);
WordApp.Visible := false;
三.表格插入数据
WordDoc.Tables.Item(TbIndex).cell(cellrow,cellcol).Range.InsertAfter(conStr);
四.在指定行写数据
WordDoc.Paragraphs.Item(16).Range.InsertAfter('abcd');
五.指定字符位置插入数据
MyRange: OleVariant;
MyRange := wordDoc.Range(Start:=0,End:=10);
MyRange.InsertAfter('abcd'+#13);
六.文件保存
wordDoc.SaveAs(filename);
七.连接word(联系:二打开文档)
//测试当前是否运行了word
try
v := getactiveoleobject(word.application);
except
//未运行则运行之
v := createoleobject(word.basic);
end; r /> try
//连接到word
wordapp.connect;
except
beep;
messagedlg(不能生成文档,请确认是否安装了word 2000!, mterror, [mbok], 0);
abort;
end;
//
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询