本篇來探討 Excel 2021 版之後的 LET 函數。

LET 語法:LET(name,value,calculation) = LET(變數名稱,變數內容,計算式)

Excel-解析LET函數

【例】公式:=LET(x,2,y,3,x+y)

設定變數x=2、變數y=3、運算:x+y=2+3=5

本例變數x、變數y的內容為定數,是不會變的。

【例】公式=LET(x,A12,y,B12,(x^2+y^2)^0.5)

設定變數x=儲存格A12、變數y=儲存格B12、運算:(x^2+y^2)^0.5=5

本例變數x、變數y內容依儲存格內容而定,是可變的。

 

Excel-解析LET函數

【傳統公式】

儲存格H5:=INDEX(B4:E13,MATCH(D15,人員,0),MATCH(B15,B3:E3,0))                   
                   
【使用LET函數】

儲存格H5:=LET(DATA,B4:E13,x,MATCH(D15,人員,0),y,MATCH(B15,B3:E3,0),INDEX(DATA,x,y))

(1) 變數x = MATCH(D15,人員,0),傳回公式運算結果至x。

(2) 變數y = MATCH(B15,B3:E3,0),傳回公式運算結果至y。

(3) 變數DATA = B4:E13,設定變數內容為一個儲存格範圍。

(4) 運算:INDEX(DATA,x,y),

LET 函數讓公式更容易閱讀。

 

Excel-解析LET函數

【使用名稱定義】

(1) 定義名稱x = MATCH('C'!$D$15,'C'!$A$4:$A$13,0)

(2) 定義名稱y = MATCH('C'!$B$15,'C'!$B$3:$E$3)

(3) 定義名稱DATA ='C'!$B$4:$E$13

(3) 儲存格G4:=INDEX(DATA,x,y)

和使用 LET 函數有異曲同工之處!

 

Excel-解析LET函數

【傳統公式】

儲存格G4:=IFS(RANK(F4,$F$4:$F$13)<4,"優良",RANK(F4,$F$4:$F$13)<7,"尚可",RANK(F4,$F$4:$F$13)<11,"加油")

在這個例子,公式裡的RANK(F4,$F$4:$F$13),被運算了三次,除了公式變長而不易閱讀之外,也增加了運算的時間,降低了處理效能。

【使用LET函數】

儲存格G4:=LET(x,RANK(F4,$F$4:$F$13),IFS(x<4,"優良",x<7,"尚可",x<11,"加油"))

使用 LET 函數時,RANK(F4,$F$4:$F$13)只被運算一次,可以提高處理效能,公式縮短了,也較易於閱讀。

 

Excel-解析LET函數

【使用輔助欄位】

(1) 輔助欄位公式,儲存格A5:=IF(LEN(C5)<>0,A4+1,A4)

(2) 進行編號公式,儲存格D5:=IF(A5<>A4,A5,"")

【不使用輔助欄位】

儲存格A5:=LET(x,IF(LEN(C5)<>0,A4+1,A4),IF(x<>A4,A5,""))

在 LET 函數裡,變數x的功能和輔助欄位相同。

 

【參考資料】

 LET 函數可以參考微軟提供的說明網頁:

學不完.教不停.用不盡文章列表

arrow
arrow
    文章標籤
    Excel LET
    全站熱搜
    創作者介紹
    創作者 vincent 的頭像
    vincent

    學不完.教不停.用不盡

    vincent 發表在 痞客邦 留言(2) 人氣()