APP下载

利用VBA代码实现引用级替换

2015-04-29王志军

电脑迷 2015年10期
关键词:组合键原词编辑器

王志军

例如“山药”替换为“土豆”、“金瓜”替换为“南瓜”,诸如此类,由于需要替换的词条比较多,手工替换显然比较麻烦,其实我们可以利用VBA代码实现上述的引用级替换需求:

首先在Excel制作对照表,创建“原词”和“新词”两列,分别输入相关的词条,保证所有已打开的Excel文件已经处于关闭状态。接下来打开需要实现替换的Word文档,按下“Alt+F11”组合键,打开Microsoft Visual Basic for Applications编辑器窗口,依次选择“插入/模块”,在右侧窗格插入一个空白模块(如图1),在这里手工输入或粘贴代码(关注电脑迷微信回复“201505vba1”获取下载链接)。

上述代码中的“ ActiveDocument.Content.Find.Execute findtext:=.Range("a" & i), replacewith:=.Range("b" & i), Replace:=wdReplaceAll, Forward:=True”行表示将Excel工作表的A列内容替换为B列内容,因此如果“原词”和“新词”的位置不在A、B列,请根据实际情况进行修改。代码检查无误之后,选择“文件/关闭并返回到Microsoft Excel”,返回Excel主界面,按下“Alt+F8”组合键,打开“宏”对话框,选择并运行宏,很快就可以实现批量替换的需求。

如果运行代码后提示“用户定义类型未定义”的编译错误,请仍然进入Microsoft Visual Basic for Applications编辑器窗口,从“工具”菜单下打开“引用”对话框(如图2),在“可使用的引用”列表下勾选“Microsoft Excel 15.0 Object Library”复选框,这是由于笔者使用的Excel是2013版本,其他版本请根据实际情况进行选择,确认之后关闭对话框。重新返回Excel主界面,此时运行VBA代码就不会有错误信息出现了。

猜你喜欢

组合键原词编辑器
在同一程序的不同窗口间快速切换
三姐妹
你距离微信创作达人还有多远?
车辆段收发车运行图编辑器的设计与实现
当成语中的“心”变成“薪”
基于VLIW目标机的ELF二进制编辑器设计与实现
网页输文本 备份不再丢
说“长”道“短”
巧用Windows键,让操作更具活力
简单便捷Win8系统metro应用切换技巧