前情提要
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”,不知道怎么解决,需要自己怎么样加个判断代码么?
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”,不知道怎么解决,需要自己怎么样加个判断代码么?
解决方案 »
- 编译的openVPN2.0.9 连接服务器报错!
- 【求助】如何能连接远程局域网的服务器
- Windows7 访问FTP后,看到的文件时间超前了8小时,怎么处理
- VHDX文件在Hyper-V下运行是黑屏,只有一个光标在闪
- 急求:windows下策略的配置文件保存路径以及查看方法
- win7 软件启动后总出 Access violation at address 00 请老师们帮助一下
- IP更改不了,本地连接改了IP地址,在命令窗口查看IP却不是所更改的
- 请教 谁知道好用的服务器用WIN2003系统,
- 远程桌面无法使用,大量端口访问本机同一个端口
- 求助,怀疑是被DNS劫持了,局域网内电脑都有这个问题
- 电脑的一些程序启动时总是打开莫名奇怪的路径文件
- windows server 2008
改个参数就行
MatchWholeWord = True