您可以在清單或文件庫中使用公式和函數,以各種方式計算數據。 將計算結果列新增至清單或文檔庫,即可建立包含其他欄數據的公式,並執行計算日期和時間、執行數學方程式或作文字的函數。 例如,在工作清單上,您可以使用欄來根據 [開始日期] 和 [完成日期] 欄來計算完成每個工作所需的天數。
附註: 本文將說明與使用公式和函數相關的基本概念。 如需特定函數的特定資訊,請參閱該函數的相關文章。
本文內容
公式概觀
公式是一種方程式,可對清單或文檔庫中的值執行計算。 公式是以等號 (=) 開頭。 例如,下列公式會將 2 乘以 3,然後將結果相加 5。
=5+2*3
您可以在計算結果列中使用公式,並計算欄的預設值。 公式可以包含函數、欄參照、運算子和常數,如下列範例所示。
=PI()*[Result]^2
元素 |
描述 |
---|---|
函數 |
PI () 函數會傳回 pi 的值:3.141592654。 |
參照 (或欄名) |
[結果] 代表目前數據列 [結果] 欄中的值。 |
常數 |
直接輸入公式的數位或文字值,例如 2。 |
運算子 |
* (星號) 運算符會相乘,而 ^ (插入) 運算符會乘冪運算。 |
公式可能會使用上一個表格中的一或多個元素。 以下是一些公式 (複雜度) 的範例。
簡單的公式 (例如 =128+345)
下列公式包含常數和運算符。
範例 |
描述 |
---|---|
=128+345 |
新增 128 和 345 |
=5^2 |
方塊 5 |
包含欄參照 (的公式,例如 =[營收] >[成本])
下列公式參照相同清單或文檔庫中的其他欄。
範例 |
描述 |
---|---|
=[營收] |
使用 [營收] 欄中的值。 |
=[營收]*10/100 |
[營收] 欄中值的 10%。 |
=[營收] > [成本] |
如果 [營收] 欄中的值大於 [成本] 資料行中的值,則傳回 [是]。 |
呼叫函數 (的公式,例如 =AVERAGE (1、2、3、4、5) )
下列公式稱為內建函數。
範例 |
描述 |
---|---|
=AVERAGE (1、2、3、4、5) |
傳回一組值的平均值。 |
=MAX ([Q1], [Q2], [Q3], [Q4]) |
會傳回一組數值中的最大值。 |
=IF ([Cost]>[營收], “Not OK”, “OK”) |
如果成本大於營收,則傳回 [不確定]。 Else,傳回 [確定]。 |
=DAY (“15-Apr-2008”) |
傳回日期的日部分。 此公式會傳回數位 15。 |
含巢狀函數 (的公式,例如 =SUM (IF ([A]>[B]、[A]-[B]、10) 、[C]) )
下列公式將一或多個函數指定為函數自變數。
範例 |
描述 |
---|---|
=SUM (IF ([A]>[B], [A]-[B], 10) , [C]) |
IF 函數會傳回欄 A 和 B 或 10 中的值之間的差異。 SUM 函數會將 IF 函數的傳回值與欄 C 中的值相加。 |
=DEGREES(PI()) |
PI 函數會傳回數位 3.141592654。 DEGREES 函數會將以弧度表示的值轉換成角度。 此公式會傳回值 180。 |
=ISNUMBER (FIND (“BD”,[Column1]) ) |
FIND 函數會搜尋 Column1 中的字串 BD,並傳回字串的起始位置。 如果找不到字串,它會傳回錯誤值。 如果 FIND 函數傳回數值,ISNUMBER 函數會傳回 Yes。 Else 會傳回 No。 |
函數概觀
函數是預先定義的公式,會使用稱為引數的特定值以特定的順序或結構來執行計算。 函數可以用於執行簡單或複雜的計算。 例如,ROUND 函數的下列實例會將 [成本] 欄中的數位舍位至兩位小數字數。
=ROUND([Cost], 2)
當您學習函數和公式時,下列詞彙很有説明:
結構 函數結構是以等號 (=) 開頭,後面接函數名稱、左括弧、以逗點分隔的函數引數,以及右括弧。
函數名稱 這是清單或文檔庫支援的函數名稱。 每個函數都需要特定數目的自變數、處理它們,並傳回值。
引數 自變數可以是數位、文字、True 或 False 等邏輯值,或欄參照。 您指定的自變數必須為該自變數產生有效的值。 引數也可以是常數、公式或其他函數。
在某些情況下,您可能需要將某函數做為另一函數的引數使用。 例如,下列公式使用巢狀 AVERAGE 函數,並將結果與兩欄值的總和進行比較。
=AVERAGE([Cost1], SUM([Cost2]+[Discount]))
有效的傳回值 當函數做為自變數使用時,必須傳回自變數所使用的相同值類型。 例如,如果自變數使用 Yes 或 No,則巢狀函數必須傳回 Yes 或 No。 如果沒有,清單或文檔庫會顯示 #VALUE! 的錯誤值。
巢狀層級限制 公式最多可以包含八個層級的巢狀函數。 當函數 B 做為函數 A 中的自變數時,函數 B 是第二層函數。 例如,在上述範例中,SUM 函數是第二層函數,因為它是 AVERAGE 函數的自變數。 SUM 函數內巢狀函數即為第三層函數,依此類此類之。
附註:
-
清單和文檔庫不支援 RAND 和 NOW 函數。
-
計算結果列中不支援 TODAY 和 ME 函數,但在數據行的預設值設定中則支援。
在公式中使用欄參照
參照會識別目前列中的儲存格,並指出要在清單或文件庫中搜尋您要在公式中使用的值或數據。 例如,[成本] 會參照目前列 [成本] 欄中的值。 如果 [成本] 欄目前數據列的值為 100,則 =[Cost]*3 會傳回 300。
透過參照,您可以在一或多個公式中使用清單或文檔庫中不同欄中所包含的數據。 下列數據類型的欄可在公式中參照:單行文字、數位、貨幣、日期和時間、選擇、是/否及計算。
您可以使用欄的顯示名稱在公式中參照。 如果名稱包含空格或特殊字元,您必須用方括弧括住名稱 ([ ]) 。 參照不區分大小寫。 例如,您可以將公式中的 [單價] 欄參照為 [單價] 或 [單價]。
附註:
-
您無法參照目前列以外的欄中的值。
-
您無法參照其他清單或文件庫中的值。
-
您無法參照新插入列的列識別碼。 執行計算時,標識碼尚不存在。
-
您無法在建立欄預設值的公式中參照另一欄。
在公式中使用常數
常數是未計算的值。 例如日期 10/9/2008、數字 210 與文字 "季收入" 都是常數。 常數可以是下列資料類型:
-
String (範例:=[Last Name] = “Smith”)
字串常數以引號括住,最多可包含 255 個字元。
-
數位 (範例:=[Cost] >= 29.99)
數值常數可以包含小數字數,而且可以是正數或負數。
-
日期 (範例:=[Date] > DATE (2007,7,1) )
日期常數需要使用 DATE (year,month,day) 函數。
-
布爾值 (範例:=IF ([Cost]>[營收]、 “遺失”、 “無損失”)
是和否是布爾值常數。 您可以在條件式表示式中使用它們。 在上述範例中,如果成本大於營收,IF 函數會傳回 Yes,且公式會傳回字串 “Loss”。 如果 Cost 等於或小於營收,則函數會傳回 No,且公式會傳回字串「無損失」。
在公式中使用計算運算符
運算子會指定您要在公式元素上執行的計算類型。 清單 和文檔庫支援三種不同類型的計算運算符:算術、比較和文字。
算術運算子
使用下列算術運算符來執行基本的數學運算,例如加法、減法或乘法;以合併數位;或產生數值結果。
算術運算子 |
表示 (範例) |
---|---|
+ (加號) |
加 (3+3) |
- (減號) |
減法 (3-1) 否定 (–1) |
* (星號) |
乘法 (3*3) |
/ (斜線) |
除 (3/3) |
% (百分比符號) |
百分比 (20%) |
^ (插入號) |
指數 (3^2) |
比較運算子
您可以使用下列運算子來比較兩個值。 使用這些運算符比較兩個值時,結果會是是或否的邏輯值。
比較運算子 |
表示 (範例) |
---|---|
= (等號) |
等於 (A=B) |
> (大於符號) |
大於 (A>B) |
< (小於符號) |
小於 (A<B) |
>= (大於或等於符號) |
大於或等於 (A>=B) |
<= (小於或等於符號) |
小於或等於 (A<=B) |
<> (不等於符號) |
不等於 (A<>B) |
文字運算子
使用擴充器和 (&) 來聯結或串連一或多個文字字串,以產生一段文字。
文字運算子 |
表示 (範例) |
---|---|
& (& 符號) |
連接或串連兩個值,以產生一個連續的文字值 (“North”&“wind”) |
清單或文檔庫在公式中執行作業的順序
公式會依照特定的順序來計算值。 公式的開頭可能是等號 (=) 。 等號後面是要計算 (作数) 的元素,這些元素是由計算運算符分隔。 清單 和文檔庫會根據公式中每個運算符的特定順序,從左至右計算公式。
運算子優先順序
如果您在單一公式中合併多個運算符,清單和文檔庫會按照下表中顯示的順序執行運算。 如果公式包含的運算符具有相同的優先順序,例如,如果公式同時包含乘法運算符和除法運算符,清單和文檔庫會由左至右評估運算符。
運算子 |
描述 |
---|---|
– |
負 (如在 -1 中) |
% |
百分比 |
^ |
乘冪 |
* 和 / |
乘和除 |
+ 和 - |
加和減 |
& |
串連 (連接兩個文字字串) |
= < > <= >= <> |
比較 |
括號的使用
若要變更評估順序,請以括弧括住要先計算的公式部分。 例如,下列公式會產生 11,因為清單或文檔庫會先計算乘法再加法。 公式先將 2 乘以 3,然後與 5 相加來得到結果。
=5+2*3
相反地,如果您使用括號變更語法,清單或文檔庫會將 5 和 2 相加,然後將結果乘以 3 以產生 21。
=(5+2)*3
在下面的範例中,公式第一部分的括弧會強制清單或文檔庫先計算 [成本]+25,然後再將結果除以 EC1 和 EC2 欄中值的總和。
=([Cost]+25)/SUM([EC1]+[EC2])