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