evaluate函數怎么使用 多列 evaluate函數怎么使用2020



文章插圖
evaluate函數怎么使用 多列 evaluate函數怎么使用2020

文章插圖
新函數LAMBDA的用法及遞歸計算實現
Excel出了很多新函數,其中LET、LAMBDA函數使得Excel更加靠近編程語言,我們上一篇簡單介紹了LET函數,這一篇我們來看看LAMBDA函數 。
編程語言與Excel最大的區別在于,編程語言除了有豐富的函數之外,還可以根據需要自定函數,LAMBDA函數就給Excel帶來了自定義函數這個功能 。
其實在Excel中自定義函數,可以通過VBA編寫,然后以加載項的方式,加載自定義函數,也可以通過名稱管理器的方式定義一個名稱,然后引用 。
最常用的就是宏表函數EVALUATE,大家還有沒有印象:
相當于我們定義了一個內置參數的函數ev,把前面單元格中的字符串當作算式計算結果 。
今天我們這個LAMBDA函數也有這種用法,我們先從最簡單的單元格中直接使用說起:
單元格中使用LAMBDA函數
LAMBDA函數有n個參數構成,看下面的例子:
我們定義了一個函數,參數是x,計算公式是SUM(x),然后我們在結尾輸入B2:B11來調用這個函數,得到運行結果 。
在LET函數中使用LAMBDA函數
上一篇我們學習了LET函數,知道LET函數能夠定義名稱:
我們在LET中:
定義參數名稱 a : a=B2:B11定義函數名稱b:b=LAMBDA(x,SUM(x))然后在LET最后調用這個函數b(a)獲得計算結果 。在名稱管理器中使用LAMBDA函數
我們在名稱管理器中添加一個名稱ss:
然后我們在單元格中直接調用這個函數,ss(B2:B11)獲得計算結果 。
以上就是LAMBDA函數的三種基本用法,下面我們再來看看:
LAMBDA函數的遞歸計算
遞歸計算,就是我們在函數中調用函數本身的這種計算:
我們用Power Query來做一個示例:
我們知道Power [email protected],我們定義的這個遞歸函數,是計算比x到n的和 。
遞歸函數需要一個終止條件,否則會出錯,上面這個函數的終止條件就是n=1,大家可以看到函數調用的規律是,x+1,n-1,所以每調用一次,n值就會減掉1,一直減到1結束函數調用,遞歸函數的本體其實是else后面的部分,就是x+(x+1)
n=10,1+2
n=9,1+2+3
n=8,1+2+3+4
. . . . . .
n=1,1+2+3+…+10
上面就是這個遞歸函數的計算過程 。
那么我們在Excel中如果用LAMBDA函數來實現這個過程呢?
同樣的需要在名稱管理器中定義遞歸函數,然后調用這個函數計算:
公式的內容與Power Query中是一樣的,只不過語法有點區別 。
這個遞歸公式只能在名稱管理中使用,LET函數中會顯示名稱錯誤:
【evaluate函數怎么使用 多列 evaluate函數怎么使用2020】好了,以上就是新函數LAMBDA的簡單用法 。