- ">
- 本技巧的目的:掌握循环批量替换多个值的方法
- 1. 代码助手可以查找到替换的代码
- 2. 循环读取参数表的数据
- 更多作品请百度搜索 郑广学
- EXCEL880.COM 官网下载">VBA代码助手 懒人神器 在 EXCEL880.COM 官网下载
本技巧的目的:掌握循环批量替换多个值的方法
1. 代码助手可以查找到替换的代码
代码助手下载地址 [http://excel880.com/blog/archives/11297](http://excel880.com/blog/archives/11297)
- 输入中文: 替换+空格,无需切换界面,代码助手会自动寻找出匹配的代码:
- 选择后实现快速输入代码的目的。
如果代码库没有收录,第一次进行收录后,以后再使用只需调用即可。
2. 循环读取参数表的数据
以下为参数表: 一共 3行 2列 的数据
- 根据行数进行循环:
- 代码如下:
- For i = 1 To 3 ‘第1行 到 第3行循环
- 查找值 = Sheet5.Cells(i, 1) ‘第1列, 循环行单元格
- 替换值 = Sheet5.Cells(i, 2) ‘第2列, 循环行单元格
- Sheet2.Cells.Replace What:=查找值, Replacement:=替换值, LookAt:=xlWhole
- ‘到 sheet2 内查找, 替换
- Next
- 注释:
- ★★★ 注意:先将需要 查找值,替换值 赋值给变量,这样书写代码,调试代码都会变得方便!
- 替换代码可以通过录制宏方法得到:
- 查找下一个,替换:
- ★★★ 注意:录制完毕后,一定要停止录制代码。
- 得到代码如下:
- 修改红框画出的替换代码:
- Activecell: 活动的单元格
- 使用实际的单元格来替换它。
- Sheet2.Cells:sheet2 内的所有单元格 见下图:
- Range.Replace 方法的参数:
- 以下为必写参数:
- ① What 需要搜索的字符串
- ② Replacement 需要替换的字符串
- 以下为可选参数:
- ③ LookAt 匹配方式: xlWhole 完全匹配 或 xlPart 任一部分匹配
- ④ SearchOrder 搜索次序:
- xlByRows : 先向右搜索,完毕后再移到下一行进行搜索
- xlByColumns:先向下搜索,完毕后再移到下一列进行搜索
- ⑤ MatchCase 是否区分大小写 True:区分 False: 不区分
- ⑥ MatchByte 是否区分全半角 True:双字节字符只与双字节字符匹配。False:双字节字符可与其对等的单字节字符匹配。
- ⑦ SearchFormat 搜索的文字格式
- ⑧ ReplaceFormat 替换的文字格式
- 运行前:
- 运行中:
- 可以通过本地窗口,查看各赋值的情况:
- 将断点打到 Next,按F5 运行后:
- 本地窗口显示:i:第1行 查找值:姓名1 替换值:孙悟空
- 左边的单元格显示,已将 姓名1 全部 替换成 孙悟空
- 将 Next 的断点去掉,全部运行完毕后:
- 实现了文字的全部替换。
更多作品请百度搜索 郑广学
VBA代码助手 懒人神器 在 EXCEL880.COM 官网下载