LAMBDA()是一个革命性的函数,你可以用它创建新函数,函数的名称,参数,功能都可以自行设计。
不涉及编程,学习成本低,哪怕是新手也能在一杯奶茶的时间学会。
简单的案例来认识一下,LAMBDA().
第一步:常规公式
这是一个常用公式,从身份证号码中提取出生日期。
=--TEXT(MID(A2,7,8),"0-00-00")
提取出生日期
第二步,LAMBDA定义参数和功能
在B3输入公式
=LAMBDA(号码,--TEXT(MID(号码,7,8),"0-00-00"))
LAMBDA第一参数:定义了一个参数,参数名称“号码”;
LAMBDA第二参数:定义了一个公式,公式的作用是从“号码”中提取出生日期。也是要定义的新函数的功能。
公式返回错误值,因为参数“号码”还没有被赋值。
LAMBDA
第三步,给参数赋值测试LAMBDA
B3公式修改为
=LAMBDA(号码,--TEXT(MID(号码,7,8),"0-00-00"))(A2)
在第二步公式的基础上,LAMBDA后面多了一个括号(A2),表示引用A2单元格作赋值给参数“号码”,用于LAMBDA执行第二参数的运算。
其效果等同于B2单元格的公式。
LAMBDA
第四步,定义一个新的函数
绕了一大圈,最终还是从数据中提取身份证号码,意义何在?
【公式】选项卡下点击【定义名称】
名称设置为”SFZ”,
第二步中定义好的LAMBDA公式输入到“引用位置”。
=LAMBDA(号码,--TEXT(MID(号码,7,8),"0-00-00"))
定义名称
第五步,使用函数
恭喜你,创造了一个新的函数:SFZ(号码)
函数名称:SFZ
参数:号码
函数功能:从身份证中提取出生日期
调用函数SFZ
假设场景:需要处理的身份证号码每天在批量新增,添加到不同的工作表上。
用SFZ()会不会比输入那个长长的公式要快很多呢?
=SFZ(A2:A7)
函数SFZ
两个弊端:
- 定义的函数不能跨工作簿使用;
- 你同事很可能看不懂。
