Delphi 如何替换Word文档中的文本


本文整理自网络,侵删。

 
use ActiveX, ComObj;

const 
  wdFindContinue = 1;
  wdReplaceOne = 1;
  wdReplaceAll = 2;

var 
  WordApp: Variant;

begin
  // create OLE object for MS Word application:
  WordApp := CreateOLEObject('Word.Application');
  // load a document from your file
  WordApp.Documents.Open(yourDocFileName);
  WordApp.Selection.Find.ClearFormatting;
  WordApp.Selection.Find.Text := yourStringForSearch;
  WordApp.Selection.Find.Replacement.Text := yourNewStringForReplace;
  WordApp.Selection.Find.Forward := True;
  WordApp.Selection.Find.MatchAllWordForms := False;
  WordApp.Selection.Find.MatchCase := Flase;
  WordApp.Selection.Find.MatchWildcards := False;
  WordApp.Selection.Find.MatchSoundsLike := False;
  WordApp.Selection.Find.MatchWholeWord := False;
  WordApp.Selection.Find.MatchFuzzy := False;
  WordApp.Selection.Find.Wrap := wdFindContinue; 
  WordApp.Selection.Find.Format := False;
  
  WordApp.Selection.Find.Execute(Replace := wdReplaceAll)
end;

//要替换首次出现的文字,请使用
WordApp.Selection.Find.Execute(Replace := wdReplaceOne);
替换
WordApp.Selection.Find.Execute(Replace := wdReplaceAll)

//要检查是否找到了文本,请使用Found方法:
if WordApp.Selection.Find.Found then
  {do something}
Save the modified document with:

WordApp.ActiveDocument.SaveAs(yourDocFileName);

//最后,使用以下命令关闭MS Word实例:
WordApp.ActiveDocument.Close;
WordApp.Quit;
WordApp := Unassigned;
注意:
如果要更改字体而不是文本,请使用WordApp.Selection.Find.Replacement的Font 属性而不是 Text。

相关阅读 >>

Delphi获取千千静听歌词下载地址源码

Delphi 实现延时自动关闭对话框

Delphi types of actual and formal var parameters must be identical

win7下使用Delphi7的方法

Delphi twebbrowser 屏蔽右键菜单

Delphi f1026 file not found: ''quickrpt.dcu''解决方法

Delphi exec error 错误处理

Delphi fmx检查应用程序状态更改

Delphi 之 标签组件(tlabel组件)

delhi 获取进程图片

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...