前情提要
  http://bbs.csdn.net/topics/391985595
  本来都打算自己做一个COM的,后来发现VBA似乎可以满足我的需求,花了几天时间填了一个EXCEL列出了需要替换的文档
  借用了一下前人的代码
  Sub 按表替换()
'首先引用ms excel
'运行前关闭所有excel程序
Dim ex As Excel.Application, boo As Excel.Workbook, shee As Worksheet, i As Integer
Set ex = New Excel.Application
Set boo = ex.Workbooks.Open("E:\替换表.xls")
    ex.Visible = False    '设置EXCEL对象可见(或不可见)
    Set shee = boo.Worksheets(1)    '设置活动工作表
With shee
For i = 1 To .Range("b65536").End(xlUp).Row
ActiveDocument.Content.Find.Execute findtext:=.Range("a" & i), replacewith:=.Range("b" & i), Replace:=wdReplaceAll, Forward:=True '将excelA列替换为B列内容
Next
End With
boo.Close
ex.Quit
Set boo = Nothing
Set ex = Nothing
End Sub运行的时候注意在Basic里面“工具“——引用里面勾选Excel Object library,否则宏没法运行
大体上是搞定了,后续还有些冲突需要慢慢调试,比如有些单词包括其他单词
例如banana=香蕉,翻译的时候会把an单独提出来翻译成“一个”,就变成了“b一个一个a”,不知道怎么解决,需要自己怎么样加个判断代码么?