大家都知道Excel中有两个替换函数,一个是SUBSTITUTE,还有一个是REPLACE,但是他们每次只能替换一个内容,如果我们有多个内容需要替换就要嵌套多层,那么有没有办法实现一次全部替换呢? 想要实现批量替换,就需要把上次替换后的结果作为下次替换的基础,说白了就是要循环起来 先来看看普通方法 普通方法 普通方法,使用SUBSTITUTE,每次只能替换一个内容,如果我们有多组就要嵌套多层,比如下面1236四个数字就要嵌套四层SUBSTITUTE函数,如果更多,是不是就直接搞晕了! 显然量大的情况下不推荐使用这种方法,但是少量也可以使用,毕竟这种方法最简单! 下面我们看看新函数如何处理,直接一次搞定! 新函数处理
公式要如何理解,首先初始值是A1单元格中的数字,我们要替换的内容也就是0-9,内容存放在D1:D10,,REDUCE函数的第二参数我们就使用这个区域,LAMBDA中,直接照抄就行,REDUCE会帮我们把每次处理后的结果作为下次需要替换的值,直到全部替换完成返回! 如果觉得上面的数字替换太简单,我们看一个群里中朋友替的实战案例看一下应用场景! 实战案例 根据“模版”,用模版中字段对应的内容替换掉模板中的字段,结果是参考答案! 你要怎么做,你可能想到了SUBSTITTUTE,但是真的太麻烦了,使用REDUCE函数,一次搞定! 是不是超级简洁,不管你有多少需要替换的,都可以使用下面的公式搞定! 只需要修改第一参数(初始值)和第二参数,需要替换的值,新的值在需要替换值的右侧! =REDUCE($A$2,C3:C8,LAMBDA(x,y,SUBSTITUTE(x,y,OFFSET(y,,1)))) 365版本中的这些新函数,解决了过去函数难以处理或者处理起来非常麻烦的困扰,现在我办公中一些少量的数据,365函数可以处理,我也懒得再去敲代码了,方便了很多! |
|