Let函式

1. 函式作用

報表中,若使用到複雜的FR腳本運算式,如:=if (很長很長的公式 > 0,執行語句 1(很長很長的公式),執行語句 2(很長很長的公式)),首先想到的是:將很長很長的公式先放在一個儲存格(如:A1)中,然後在另一個儲存格中,輸入=if(a1>0, 執行語句1(a1), 執行語句2(a1))。對於這樣的很長公式,一般公式中還會有部分內容是一些其他的簡單運算,若再使用儲存格去求算一下,最終求算最終結果時就得引用多個儲存格。這樣的指派方式,不但多佔用空間記憶體使得重複計算,其效能往往也不是很好。據此 FR 已增加 LET 公式,可將其很長的公式直接指派,且可直接使用此公式求解最終結果(複雜的腳本運算式),還可提高其效能。

2. 使用說明

2.1 LET()函式說明

LET(變數名,變數值,變數名,變數值,...,運算式):區域性變數指派函式,參數的個數 N 必須為奇數, 最後一個是運算式,前面是 N-1(偶數)為區域性變數指派對。

  • 變數名:必須是合法的變數名,以字母開頭,可包括字母,數字和底線。

  • 運算式:根據其前面的 N-1 個參數指派後,需計算的結果運算式,且這些變數指派只在這個運算式內部有效。

範例:

LET(a, 5,b, 6, a+b)等於 11。

2.2 範例

下面根據如上所遇的情況範例介紹,您可根據實際情況,參照範例使用此公式。

1)一個很長的公式為((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1),若將其賦給 a,需計算 IF(a>1000,(a+200)/a,(a-200)*a)的結果運算式。

2)通常的做法:在任意儲存格(如:A1)中,輸入((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1),然後在另一個儲存格(如:B1)中,輸入=IF(A1>1000,(A1+200)/A1,(A1-200)*A1)

3)而計算時是將 A1 中的值,對應帶入其結果運算式中的。如這邊帶入的話就是計算=IF((((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1))>1000,((((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1))+200)/(((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1)),((((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1))-200)*(((10+20+30)*MAX(10,20,30)+DATEDIF("2001/2/28","2004/3/20","D"))*COS(0.5)/ROUND(2.15, 1)))

不僅多佔用儲存格且使得運算式重複計算,其效能往往也不是很好。

4)LET 公式的寫法:只需在儲存格中直接指派和寫入結果運算式。在一個儲存格中,直接輸入=LET(a, ((10 + 20 + 30) * MAX(10, 20, 30) + DATEDIF("2001/2/28", "2004/3/20", "D")) * COS(0.5) / ROUND(2.15, 1), IF(a> 1000, (a+ 200) / a, (a - 200) * a))即可執行結果運算式,進而得出最終結果。

2.3 總結

對比可看出,使用 LET 公式明顯比通常的做法來得簡單,且公式中若再有其他簡單運算,如:最大值、平均值等等,也可不必再次佔用其他儲存格然後再引用此類儲存格,這邊可直接一步到位求算結果(亦可在 LET 中直接寫一些常用的計算公式),這樣也大大地提高了效能。


附件列表


主題: 報表專題
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙

反饋已提交

網絡繁忙