本帖最后由 Lynn.Dou 于 2022-1-20 11:17 编辑
LAMBDA函数是什么:
LAMBDA 允许使用 Excel 自己的公式语言定义自定义函数
语法:
- =LAMBDA([parameter1, parameter2, …,] calculation)
复制代码 parameter1, parameter2等参数是可选的,表示要传递给函数的值,例如单元格引用、字符串或数字;最多可以输入 253 个参数。
calculation 表示要执行并作为函数结果返回的公式,必须为最后一个参数,且必须返回一个结果。
结合具体的例子来理解下此函数:
1、
直接在单元格中输入公式: =LAMBDA(number,number+1)(1)
如下图,计算结果为2。
在此公式中,number值即为 1,计算结果为” number+1“,即 “1+1”,所以最终结算结果为2。
2、
将上述LAMBDA函数添加到名称管理器,然后在单元格中使用:
- spread.addCustomName("PlusOne", "LAMBDA(n, n + 1)", "");
- sheet.setFormula(1, 0, 'PlusOne(1)'); // 计算结果为2
复制代码
3、
结合具体的需求使用LAMBDA函数,比如,我想通过LAMBDA函数将 将华氏度转换为摄氏度。
首先确定华氏度与摄氏度的转换关系:
使用LAMBDA函数进行计算:
- =LAMBDA(temp, (5/9) * (Temp-32))
复制代码 将LAMBDA函数添加到名称管理器,并将该函数命名为ToCelsius
- spread.addCustomName("ToCelsius", "LAMBDA(temp, (5/9) * (Temp-32))", "");
- sheet.setFormula(2, 0, 'ToCelsius(104)'); // 计算结果为40
复制代码
4、
LAMBDA函数可作为另一个LAMBDA函数的参数。
如下图,将公式 =LAMBDA(a, LAMBDA(b, b+a)) 添加到名称管理器中,并将该函数命名为Plus:- spread.addCustomName("Plus", "LAMBDA(a, LAMBDA(b, b+a))", "");
- sheet.setFormula(2, 0, 'Plus(2)(3)'); // 计算结果为5
复制代码
|