怎样写一个word宏或者excel宏,调用excel中的数据,对Word文档进行自动批量替换?

请教各位大侠,帮忙解决个问题:在Word文档中多处存在A/B/C等,我想将A替换成1,B替换成2,C替换成3,如此类推……,然后我在excel中弄了个n行两列的表格,分别为被替换的字符A/B/C等和用来替换的字符1/2/3等,
怎样写一个word宏或者excel宏,调用excel中的数据,对Word文档进行自动批量替换?
但是听说VBA能够很容易地解决这个问题,我在网上找到的答案也没有实现这个目的,我对VBA不懂,不知道问题出现在哪里,请教各位大侠帮忙,尽量把条件写得全一些,多谢了。
我在网上找到了类似问题和答案,但是我用OFFICE2003运行不了,

你不一定会修改宏,所以,给你另外一种方法吧:

可以试试 文件批量处理百宝箱V9.0中的主界面中的批替换功能卡。

1.在你的Excel表格中,插入一列,该列采用自动填充的方式,填充上序号1,2,3,4.。。。。。

2.该序号列的后一列是待查找的内容列,再后一列是替换后的新内容

3.将此表格的内容另存为txt文档(制表符分隔)

4.启动百宝箱,切换到主界面的批替换功能卡,选择doc类型,然后将待处理的文档列表加载如列表中,然后进入批替换界面,单击导入批替换操作列表

5.单击 执行批替换。

以后你只需要修改该列表,可以很方便的重复批量使用。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-02
用信函模式,word例子就有,看看就会了
第2个回答  推荐于2020-01-24
用vba 的确可轻松解决,如果未解决的话请追问追问

能否帮忙说得详细些,谢谢
A、B、C和1、2、3只是举例,详细地说,就是英文句子翻译成中文句子,因为单词很多,不想手工替换,想用宏批量替换。
我已经会用word宏批量替换,现在是想用word调用EXCEL中的数据。

追答

这个应该是你想要的答案,你应该能看懂:
Sub 按表格替换()
Dim e As Excel.Application
Dim b As Workbook
Dim s As Worksheet
Set e = New Excel.Application
Set b = e.Workbooks.Open("c:\123.xls")
e.Visible = False
Set s = b.Worksheets(1)
With s
For i = 1 To .Range("b65536").End(xlUp).Row
Selection.Find.Execute .Range("a" & i), , , , , , , , , .Range("b" & i), 2
Next
End With
b.Close
e.Quit
Set b = Nothing
Set e = Nothing
End Sub

追问

非常感谢,我解决了。

本回答被提问者采纳
第3个回答  2013-05-01
第4个回答  2013-05-01
你可以通过word邮件试试看。
相似回答