2015年10月30日 星期五

WORD文件取代字串

最近要把WORD文件中的年月和一些日期資料給換掉,不過因為要改的WORD文件太多了,就寫了一段Delphi程式來做修改。
程式說明如下:

// SFile 來源的WORD文件路徑,TFile是要存的WORD文件
procedure ChangeDOC(SFile,TFile : string);
var
  WordApp, WordDocu, myRange: variant;
  sStr,rStr : String;
begin
    // 開啟來源的WORD文件
    WordApp := CreateOleObject('Word.Application');
    WordApp.Visible := True;
    WordDocu := WordApp.Documents.Open(SFile);
    myRange := WordDocu.Content;
    try
      // sStr是要被取代的字串,rStr是要取代的內容
      sStr := Edit3.Text;
      rStr := Memo1.Text;
     // 這一行是重點,啟動WORD的取代功能
      myRange.Find.Execute(FindText := sStr, ReplaceWith := rStr, Replace := 2);
    // 存成新的WORD檔
      WordDocu.SaveAs(TFile);
    finally
      WordApp.Quit;
    end;
    ShowMessage('轉WORD完成');
end;

提供給大家做參考