必須要搞清楚LET函數(shù)和LAMBDA函數(shù)的核心區(qū)別
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
在B站的相關(guān)視頻中,我經(jīng)??吹接腥嗽诹粞詤^(qū)提及LAMBDA函數(shù)與LET函數(shù)并無差異。而他們之所以會(huì)得出這樣的結(jié)論,我想主要是因?yàn)橹v解者往往采用了類似如下的案例來予以闡述: =LET(x,2,y,3,x+y) 結(jié)果為5,沒毛病。 =LAMBDA(x,y,x+y)(2,3) 結(jié)果同樣為5,也沒毛病。 這時(shí)有人就說了,確實(shí)沒有什么大的區(qū)別呀,只不過是LET函數(shù)將變量的值置于括號(hào)內(nèi)部,而LAMBDA函數(shù)把變量的值放置在括號(hào)之外罷了。 看到這里,我不得不重點(diǎn)說明一下,如果您真的如此理解,那可大錯(cuò)特錯(cuò)了。上面所舉的例子僅僅只是LAMBDA函數(shù)的基礎(chǔ)效用罷了。換言之,LAMBDA函數(shù)雖具備這樣的功能,然而在實(shí)際運(yùn)用場(chǎng)景里卻很少這樣用。 LAMBDA函數(shù)最為關(guān)鍵之處在于其自定義特性,它能夠與其他函數(shù)協(xié)同配合,并且可以有效地化解傳遞參數(shù)方面的難題。這一點(diǎn)您務(wù)必要清晰知曉,否則您想要熟練掌握EXCEL的新型函數(shù)將會(huì)困難重重。 常常會(huì)與LAMBDA函數(shù)協(xié)同運(yùn)用的函數(shù)包括MAP、REDUCE、SCAN、BYROW、BYCOL、MAKEARRAY等函數(shù)??梢哉f,這些函數(shù)堪稱是LAMBDA函數(shù)的專屬得力助手,它們彼此配合,相得益彰,能夠在眾多復(fù)雜的數(shù)據(jù)處理與計(jì)算情境中發(fā)揮出強(qiáng)大的效能,助力用戶更為高效、精準(zhǔn)地達(dá)成各類任務(wù)目標(biāo),極大地拓展了Excel在數(shù)據(jù)處理領(lǐng)域的深度與廣度,為使用者提供了更為豐富多樣且靈活多變的解決方案。 為了清晰闡釋此問題,我們選取一個(gè)相對(duì)簡(jiǎn)易的案例加以說明: =BYROW(B2:G9,LAMBDA(x,AVERAGE(x))) 此案例在之前講解BYROW函數(shù)時(shí)也曾提及,即按行求取平均值。 仔細(xì)研究上述公式后,我們便能察覺出三個(gè)關(guān)鍵問題: 第一,在實(shí)際運(yùn)用LAMBDA函數(shù)求平均值的場(chǎng)景中,并非如部分人所誤解的那樣將變量的值置于括號(hào)之外,恰恰相反,此處括號(hào)外面并無任何內(nèi)容。 第二,單元格區(qū)域[B2:G9]的每一行均借助BYROW函數(shù)傳遞至LAMBDA函數(shù)的變量x里,進(jìn)而開展AVERAGE計(jì)算操作,隨后直接輸出相應(yīng)的計(jì)算結(jié)果。瞧見了吧,此即為典型的傳遞參數(shù)過程。 其三,此刻若我們嘗試使用LET函數(shù)去替換上述公式里的LAMBDA函數(shù),也就是: =BYROW(B2:G9,LET(x,AVERAGE(x))) 那么,在此情形下,單元格區(qū)域[B2:G9]的每一行是否能夠順利傳遞至LET函數(shù)的x之中呢?又是否能夠最終成功計(jì)算得出每行的平均值呢?很顯然,答案是這兩者都是否定的。它既不能傳遞參數(shù),也不能計(jì)算平均值。 看見沒有,系統(tǒng)直接將=BYROW(B2:G9,LET(x,AVERAGE(x)))這個(gè)所謂的公式視作文本處理了。既然已被當(dāng)作文本,又何談函數(shù)的功能,何談進(jìn)行計(jì)算呢?! 談及此處,或許有人又會(huì)萌生這樣的念頭,即認(rèn)為L(zhǎng)ET函數(shù)無法進(jìn)行嵌套操作。實(shí)則不然,LET函數(shù)主要致力于解決變量設(shè)置方面的問題,簡(jiǎn)單來講,其核心作用在于簡(jiǎn)化公式。 例如下面這個(gè)計(jì)算含稅總額的案例便運(yùn)用了LET函數(shù)嵌套:
上面的公式雖然寫得很長(zhǎng),但是其復(fù)雜程度卻并不高。與之相反,該公式的邏輯條理更為明晰,更易于理解與領(lǐng)會(huì)。 該文章在 2024/12/9 14:19:06 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |