小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

LAMBDA連載(4)--Map實(shí)現(xiàn)函數(shù)內(nèi)部的循環(huán)迭代

 昵稱72339616 2024-04-23 發(fā)布于湖北

MAP:地圖,繪圖,映射

截止今日24.4.23 MAP函數(shù)僅能在office365中使用,wps預(yù)計(jì)在6月更新中可用!

很多場(chǎng)合中用映射來解釋函數(shù)MAP的功能,但我更愿意用“挨個(gè)執(zhí)行”來解釋它,正式一點(diǎn)可以說成遍歷,對(duì)應(yīng)VBA代碼中就是循環(huán)

=MAP(數(shù)組1,數(shù)組2或LAMBDA,數(shù)組2或LAMBDA,數(shù)組2或LAMBDA……)

MAP啟用的最后一個(gè)參數(shù)必定是LAMBDA表達(dá)式,在此之前都是數(shù)組。例如啟用了4個(gè)參數(shù),第4個(gè)是LAMBDA表達(dá)式,第1到第3個(gè)是數(shù)組。

先用一個(gè)簡(jiǎn)單的案例說明MAP“挨個(gè)執(zhí)行”的特性。

給每一個(gè)銷量數(shù)據(jù)加上5,輸入簡(jiǎn)單的數(shù)組公式即可實(shí)現(xiàn):

=C2:C12+5

改用MAP:

=MAP(C2:C12,LAMBDA(x,x+5))

兩個(gè)公式結(jié)果完全一致,計(jì)算過程則大相徑庭。

第一個(gè)公式各數(shù)組中的元素每個(gè)都加上5,一次性完成。

第二公式中MAP的第一參數(shù)是一個(gè)數(shù)據(jù)區(qū)域,它被傳遞給LAMBDA定義的參數(shù)x,此時(shí)

X=C2:C12

LAMBDA表達(dá)式x+5其實(shí)就等同于C2:C12+5,但這個(gè)計(jì)算并非一蹴而就,而是包含了11次計(jì)算:

第一次:C2+5

第二次:C3+5

第三次:C4+5

……

即對(duì)區(qū)域中的單元格挨個(gè)執(zhí)行加5的操作,最后又打包到一個(gè)數(shù)組中作為結(jié)果。

累加求和

再用一個(gè)更加直觀的案例來體現(xiàn)“挨個(gè)執(zhí)行”。

=MAP(C2:C12,LAMBDA(x,SUM(C1:x)))

公式中唯一的參數(shù)x等同于C2:C12,那么SUM(C1:x)等同于SUM(C1:C12).

同樣,SUM也是計(jì)算了11次,每次計(jì)算中C1是固定的,而x中的元素則是挨個(gè)執(zhí)行:

第一次:SUM(C1:C2)

第二次:SUM(C1:C3)

第三次:SUM(C1:C4)

……

查找第一個(gè)達(dá)成銷量目標(biāo)的人

LAMBDA系列函數(shù)更多用于創(chuàng)建數(shù)組支持較為復(fù)雜的運(yùn)算,再用一個(gè)案例來說明。

要查找數(shù)據(jù)中第一個(gè)銷量超過300的姓名。

先用MAP結(jié)合SUMIF對(duì)每個(gè)人的銷量累加求和:

=MAP(B2:B12,C2:C12,LAMBDA(x,y,SUMIF(B1:x,x,C1:y)))

在此基礎(chǔ)上用XLOOKUP查找第一個(gè)超過300的姓名:

=XLOOKUP(TRUE,MAP(B2:B12,C2:C12,LAMBDA(x,y,SUMIF(B1:x,x,C1:y)))>300,B2:B12)

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多