LET函數介紹,讓大家都懂你

今天要來介紹Excel新的LET函數,LET函數利用宣告變數的功能,來簡化試算表中複雜公式的呈現,讓與你共事活頁簿(Worksheet)的人更容易理解,亦可提升Excel計算上的效能,軟體版本需求為Excel 2021或Microsoft 365版本。

20220329_P1

LET函數架構為=LET(變數1的名稱,變數1的值(可為複雜的公式), 變數2的名稱,變數2的值,變數3...., 輸出的值)。

使用LET函數的好處包含:

  1. 清楚呈列此計算式所需求的變數。
  2. 在Excel內部引擎計算時針對同一個變數不需重複計算,僅需計算一次,可提升Excel計算效能。

以下將舉3個例子來說明LET函數之應用(從不適當到適當):

範例(一)

此範例為某家餐廳的收入計算=餐點販售數量*單價


上圖為原本的公式:

20220329_P5

下圖為使用LET函數之後的公式:

20220329_P2

=LET(
(變數1)牛肉炒飯份數,2,
(變數2)牛肉炒飯單價,120,
(變數3)豬肉河粉份數,5,
(變數4)豬肉河粉單價,110,
(變數5)收入,牛肉炒飯份數*牛肉炒飯單價+豬肉河粉份數*豬肉河粉單價,
(輸出)收入
) = 2*120 + 5*110 = 790 

此案例為教學性質,使用LET函數較為多餘,建議使用一般公式就好。

範例(二)

此範例為銷售部門查詢某年某月某銷售員的銷售額查詢表。


上圖為原本的公式:

20220329_P6

下圖為使用LET函數之後的公式:

20220329_P3

=LET(
(變數1)年月,TEXT(G2&"/"&G3&"/1","yyyy/mm"),
(變數2)銷售員,G4,
(輸出)FILTER(
FILTER(銷售統計表,(銷售統計表[銷售年月]=年月)*(銷售統計表[銷售員]=銷售員)),
{0,0,1})
) = 7,050

此範例使用LET函數後,公式有較易解讀,但計算效率上並沒有提升。

範例(三)

此範例為生產日報表說明欄位的自動化設定,如果排放量與進流量差異率超過正負10%,就會顯示字串,否則空白。


上圖為原本的公式:

20220329_P10

下圖為使用LET函數之後的公式:

20220329_P9

=LET(
(變數1)進流量,FILTER(Prep_IWW!EC5:EC400,Prep_IWW!$CH$5:$CH$400=生產日報表!$A$2),
(變數2)排放量,FILTER(Prep_IWW!CS5:CS400,Prep_IWW!$CH$5:$CH$400=生產日報表!$A$2),
(變數3)進排差異,(排放量-進流量),
(變數4)進排差異率,進排差異/進流量,
(輸出)IF(進排差異率>0.1,"排放量較進流量多"&TEXT(ABS(進排差異),"#,##0")&"M3 ("&TEXT(進排差異率,"#0.0%")&")。",
IF(進排差異率<-0.1,"排放量較進流量少"&TEXT(ABS(進排差異),"#,##0")&"M3 ("&TEXT(進排差異率,"-#0.0%")&")。",""))
)

此範例相信大家都看地出來有明顯的差異,使用LET函數後除了公式好讀很多以外,因4個變數重複出現,使用LET函數後Excel僅需計算一次,工作效率有提升不少。

總結:

  1. LET函數不需濫用,太簡單的公式使用LET函數只會造成多餘的公式與誤會;遇到結構複雜並且變數有多次重複使用的狀況時候,很可能就是LET函數大展神威的時機。
  2. 簡化公式的方法很多,舊版Excel中可利用定義名稱(Define Name)的功能進行儲存格範圍名稱命名,此部分將在下次文章中再做說明。

這篇文章對您有幫助嗎?

平均評分 5 / 5. 1

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

發表迴響