Excel新版本里面,除了出现非常好用的xlookup,Filter公式之外,还更新一批自定义函数,可以像写代码一样写公式
其中SCAN函数公式,也非常强大,它是一个循环函数,今天来了解这个函数公式的计算原理
1、基本用法
当我们输入=scan,它有3个参数组成
初始值,数组,函数
第1参数是一个初始参数
它是一个循环函数公式,它会对第2参数,:数组里面的每个数组进行循环计算
第3参数是一个函数公式,也可以是lambda自定义的公式
因此这个公式的使用空间非常强大,适用很多场景
2、实例解析
我们可以通过2个实例,来看看它的计算过程
例如1,我们希望在C2单元格,输入一个公式,一次性的得到整列的结果
它需要从上至下进行累加计算
我们只需要使用一个公式:
=SCAN(0,B2:B6,SUM)
我们分析一下它的计算过程,来理解这个函数公式:
它第一次运算的时候,会把初始值0和B2:B6的第一个结果B2拿进去运算
运算的公式我们设置的SUM,因此,它得到的结果是10
它的第二次运算:
它会把第一次计算的结果代入参数1,然后继续调用数组区域的第2个值进行计算
同样使用SUM计算,那它的结果就是15了
因为第2参数里面有5个单元格值
所以,它会依次计算5次,得到5个结果
所以它得到的结果形状会和第2参数的数组形状是一样的
3、再举例
我们想对合并单元格进行拆分
这个时候,我们可以使用公式:
=SCAN(0,A2:A11,LAMBDA(x,y,IF(y="",x,y)))
使用了SCAN函数和自定义函数快速的解决
我们可以整理它的计算过程
第1次计算,它把0传给x,把A3值传给y
然后我们用的公式就是判断y值,如果为空就返回x,否则返回y
第2次计算,上一次计算的结果就会传给x保存下来,依次循环下面的y
这样就可以轻松的将合并单元格进行拆分了
理解公式更好的学习方式是学习它的计算过程
关于这个函数公式,你学会了么?动手试试吧!