关于WORD与Delphi配合(200分)

  • 主题发起人 主题发起人 花园风味
  • 开始时间 开始时间

花园风味

Unregistered / Unconfirmed
GUEST, unregistred user!
关于WORD与Delphi配合
(烦请详细讲解,不好意思,没有例子我看不懂:( 希望能提供实例)

1、将正文、附件(多个Word文档)进行合并,并且自动套上文档模板(套宏)。
在合并文档中,有文档流转时的一些文档要素(如名称、底稿号等),能自动
加入到Word文档中。
2、能够在Word中嵌入自己的菜单栏,并且完成相关的功能。
3、对正文的修改和添加可以分人进行留痕。编辑时没有,保存后再看,有。
并能显示相关的修改人和时间。
4、能够通过分析算法查出Word文档中包涵的主题词,并且可以选择不同的标准来
分析。
5、关联文档功能,与上一条相同,都是要能够对Word文档的内容进行搜索。
......
 
建议看看OFFICE自带的VBAWORD9.CHM文档,可能有帮助
 
借花献佛吧!
应该是最详细的帖子了!
http://www.delphibbs.com/delphibbs/dispq.asp?lid=737517
[:D]
 
多人接受答案了。
 
1.很像我们公司以前开发的一套商业文档流转平台的主要功能,给你我写的两个函数
//打开或创建DOC文件
//MsWord:目标Word.Application对象
//MsDoc:目标Document对象
//FileName:目标文件
//TemplateName:模板文件
function OpenDocObj(MsWord:OleVariant;var MsDoc:OleVariant;FileName,TemplateName:string):string;
begin
result:='1';
try
MsDoc:=MsWord.Documents.Open(FileName);
//2003-03-20 不显示拼写和语法错误
MsDoc.Activate;
MsDoc.ShowSpellingErrors:=false;
MsDoc.Activate;
MsDoc.ShowGrammaticalErrors:=false;
MsDoc.Activate;
if not MsDoc.ReadOnly then MsDoc.AttachedTemplate:=TemplateName;
except
try
MsDoc:=MsWord.Documents.Add(TemplateName);
//2003-03-20 不显示拼写和语法错误
MsDoc.Activate;
MsDoc.ShowSpellingErrors:=false;
MsDoc.Activate;
MsDoc.ShowGrammaticalErrors:=false;
MsDoc.Activate;
MsDoc.SaveAs(FileName);
except
result:='Word操作失败';
end;
end;
end;

//在当前位置插入DOC文档
//MsDoc:目标Document对象
//FileName:插入DOC文件路径名称
function InsertDoc(MsDoc:OleVariant;FileName:string):string;
var
MsSelection:OleVariant;
begin
result:='1';
try
MsDoc.Activate;
MsSelection:=MsDoc.ActiveWindow.Selection;
MsDoc.Activate;
MsSelection.TypeParagraph;
MsDoc.Activate;
MsSelection.InsertFile(FileName);
except
result:='Word操作失败';
end;
end;

2.包括菜单也可以定义在模板里,只要在代码里关联click事件就行了,当然也可以动态加,具体方法查看commandbars及其相关对象的帮助

3.再给你三个函数
//打开DOC文件的修订模式
//MsDoc:目标Document对象
function ShowRevision(MsDoc:OleVariant):string;
begin
result:='1';
try
MsDoc.Activate;
MsDoc.TrackRevisions:=true;
MsDoc.Activate;
MsDoc.PrintRevisions:=false;
MsDoc.Activate;
MsDoc.ShowRevisions:=true;
except
result:='Word操作失败';
end;
end;

//接收DOC文件的修订
//MsDoc:目标Document对象
function AcceptRevision(MsDoc:OleVariant):string;
begin
result:='1';
try
MsDoc.Activate;
MsDoc.AcceptAllRevisions;
except
result:='Word操作失败';
end;
end;

//拒绝DOC文件的修订
//MsDoc:目标Document对象
function RejeptRevision(MsDoc:OleVariant):string;
begin
result:='1';
try
MsDoc.Activate;
MsDoc.RejectAllRevisions;
except
result:='Word操作失败';
end;
end;

4.5.我想已经超出word ole的范畴了

可惜没有分了
 
后退
顶部