Excel批量查找替换多个不同内容

Excel如何一次性批量实现对多个内容的“查找并替换”?

实际工作场景中,需要一次性批量实现对100多个内容的“查找并替换”。

我们用几组简单的数据来模拟实际场景,讲解一下这个问题。

如下图所示:

B列为我们想要查找替换的数据源,我们想要按照G:H列的查找替换要求,查找B列的内容:

将“Excel”替换为“E”

将“Word”替换为“W”

将“PPT”替换为“P”

最后替换完成的数据如D列所示。

我们最通常的做法就是通过快捷键“Ctrl+H”调出“查找和替换”的对话框,通过3次查找和替换,完成这样的任务。

第一次查找和替换:查找“Excel”替换为“E”

第二次查找和替换:查找“Word”替换为“W”

第三次查找和替换:查找“PPT”替换为“P”

如果我们按照上面这样的操作方法,遇到需要一次性批量实现对100多个内容的“查找并替换”的话,那效率就太低了。

2问题解答

解决这样的问题,还是用VBA代码快速的实现吧。

01.准备对应表

首先我们需要在G:H列准备好查找内容替换为内容对应表如下图所示

02.进入VBA代码编辑器

鼠标右击工作表名称标签,点击【查看代码】命令(或按快捷键Alt+F11键)进入VBA代码编辑器的窗口。

03.复制并粘贴代码

复制下面的那段VBA代码并粘贴至VBA代码编辑器窗口内。

04.运行代码

点击代码器窗口上方的【运行-运行子过程/用户窗体】命令。

代码如下:

Sub 公众号Excel情报局()
Dim arr, brr, j&, i&
arr = Range("G2:H4"): brr = Range("B2:B7")
For j = 1 To UBound(brr)
For i = 1 To UBound(arr)
brr(j, 1) = Replace(brr(j, 1), arr(i, 1), arr(i, 2))
Next i
Next j
Range("B2:B7").Value = brr
End Sub

具体操作步骤,如下动图所示:

动图封面

3代码释义

01.查找和替换为对应表的区域

代码:

arr = Range(“G2:H4“): brr = Range(“B2:B7”)

其中G2:H4代表查找和替换为对应表的区域。

02.查找的区域

代码:arr = Range(“G2:H4”): brr = Range(“B2:B7“)

其中B2:B7代表查找的区域

03.查找替换后放置数据的区域

代码:Range(“B2:B7“).Value = brr

其中B2:B7代表查找替换后放置数据的区域

本例中在查找的数据源B列上直接进行查找替换,所以查找替换后放置数据的区域B2:B7,与查找的区域B2:B7重合。

 

声明:本站资源绿色无后门无广告,可放心下载。如无特殊说明或标注,均为本站原创发布,转载请注明出处!