标签:LAMBDA函数
利用LAMBDA函数,结合其他函数编写的自定义函数,方便进行数据处理。下面是在mrexcel.com中学习整理的一些。
1 函数:YESTODAY
定义:
=LAMBDA(TODAY()-1)
使用:在单元格中输入=YESTODAY()
2 函数:斜边
定义:
=LAMBDA(a,b,SQRT(a^2+b^2))
使用:在单元格中输入=斜边(3, 4)
3 函数:圆面积
定义:
=LAMBDA(Diameter,LET(Radius,Diameter/2,PI()*Radius^2))
使用:在单元格中输入=圆面积(10)
4 函数:REVERSE
定义:
=LAMBDA(reference, TEXTJOIN("",TRUE,MID(reference,SEQUENCE(LEN(reference),,LEN(reference),-1),1)))
使用:在单元格中输入=REVERSE("excelperfect")或=REVERSE(A1)
5 函数:CHARSPOS
定义:
=LAMBDA(
myStr, myChar, k,
IFERROR(
FIND(
CHAR(1), SUBSTITUTE(myStr,myChar,CHAR(1),k)
),
LEN(myStr)+1
)
)
使用:在单元格中输入=CHARSPOS(A12,B12,2)或=CHARSPOS(“This is a song”,”s”,2) ,即给定字符串中某字符第n次出现的位置。
6 函数:ROWNUMBERS
定义:
=LAMBDA(array,SEQUENCE(ROWS(array))*SEQUENCE(,COLUMNS(array),1,0))
使用:在单元格中输入=ROWNUMBERS(array),其中array是一个二维数组,函数返回该数组行数组成的数组。
7 函数:COLUMNNUMBERS
定义:
=LAMBDA(array,SEQUENCE(,COLUMNS(array))*SEQUENCE(ROWS(array),1,1,0))
使用:在单元格中输入=COLUMNNUMBERS(array),其中array是一个二维数组,函数返回该数组列数组成的数组。
8 函数:RIGHTARRAY
定义:
=LAMBDA(array,n,direction,
SWITCH(direction,
0,INDEX(array,SEQUENCE(ROWS(array)),SEQUENCE(1,n,COLUMNS(array)-n+1)),
1,INDEX(array,SEQUENCE(n,1,ROWS(array)-n+1),SEQUENCE(,COLUMNS(array))),
2,INDEX(array,SEQUENCE(n,1,ROWS(array)-n+1),SEQUENCE(1,n,COLUMNS(array)-n+1)),
INDEX(array,SEQUENCE(ROWS(array)),SEQUENCE(1,n,COLUMNS(array)-n+1))
)
)
使用:该函数返回数组右侧n列(或行,或两者)。公式=RIGHTARRAY(array, n, direction),其中,array是要计算的数组;n是要返回的列数(或行数,或两者);direction为0或空返回n列,为1返回n行,为2返回n行和列。