SPS中計算值公式函數簡介

來源:互聯網
上載者:User
文章目錄
  • 簡單公式(如 =128+345)
  • 包含列引用的公式(如 =[Revenue] >[Cost])
  • 調用函數的公式(如 =AVERAGE(1, 2, 3, 4, 5))
  • 含有嵌套函數的公式(如 =SUM(IF([A]>[B], [A]-[B], 10), [C]))
  • 算術運算子
  • 比較子
  • 文本運算子
  • 列表或庫執行公式中的運算的順序

SPS中您可以使用列表或庫中的公式和函數以多種方式計算資料。通過向列表或庫中添加計算資料行,可以為來自其他列的資料建立公式,並可執行函數以計算日期和時間、運行數學方程或處理文字。例如,在工作清單中,可以使用一個列根據“開始日期”和“完成日期”列來計算完成每項任務所需的天數。

 注釋    本文介紹與使用公式和函數有關的基本概念。有關具體某個函數的特定資訊,請參閱有關該函數的文章。

本文內容

公式概述

函數概述

在公式中使用列引用

在公式中使用常量

在公式中使用運算子

公式概述

公式是對列表或庫中的值進行計算的等式。公式以等號 (=) 開頭。例如,在下面的公式中,結果等於 2 乘以 3 再加 5。

=5+2*3

可以在計算資料行中使用公式,也可以使用公式計算某一列的預設值。公式中可以包含函數 (函數:函數是預先編寫的公式,可以對一個或多個值執行運算,並返回一個或多個值。函數可以簡化和縮短工作表中的公式,尤其在用公式執行很長或複雜的計算時。)、列引用、運算子 (運算子:一個標記或符號,指定運算式內執行的計算的類型。有數學、比較、邏輯和引用運算子等。)和常量 (常量:不進行計算的值,因此也不會發生變化。例如,數字 210 以及文本“每季度收入”都是常量。運算式以及運算式產生的值都不是常量。),如下例所示。

=PI()*[Result]^2

元素 說明
函數 PI() 函數返回圓周率 pi 的值 3.141592654。
引用(或列名) [Result] 表示當前行的“Result”列中的值。
常量 直接輸入到公式中的數字或文本值,如 2。
運算子 *(星號)運算子執行乘法運算,^(插入符號)運算子表示將數字乘冪。

公式可以使用上表中的一個或多個元素。下面是一些按照複雜程度排序的公式的樣本。

簡單公式(如 =128+345)

下列公式包含常量和運算子。

樣本 說明
=128+345 將 128 與 345 相加
=5^2 計算 5 的平方
包含列引用的公式(如 =[Revenue] >[Cost])

下列公式引用同一個列表或庫中的其他列。

樣本 說明
=[Revenue] 使用“Revenue”列中的值。
=[Revenue]*10/100 “Revenue”列中的值的 10%。
=[Revenue] > [Cost] 如果“Revenue”列中的值大於“Cost”列中的值,則返回“Yes”。
調用函數的公式(如 =AVERAGE(1, 2, 3, 4, 5))

下列公式調用內建函數。

樣本 說明
=AVERAGE(1, 2, 3, 4, 5) 返回一組數值的平均值。
=MAX([Q1], [Q2], [Q3], [Q4]) 返回一組數值中的最大值。
=IF([Cost]>[Revenue], "Not OK", "OK") 如果成本大於收入,則返回“Not OK”。否則,返回“OK”。
=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”。否則,它返回“No”。

 

函數概述

函數是預定義的公式,這些公式使用叫做參數的特定值按特定順序或結構進行計算。函數可用於執行簡單或複雜的計算。例如,下面的 ROUND 函數執行個體可將“Cost”列的數字四捨五入為小數點後兩位。

=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 函數,但在某一列的預設值設定中支援這兩個函數。

在公式中使用列引用

引用標識當前行中的一個儲存格,並向列表或庫指示在何處搜尋要在公式中使用的值或資料。例如,[Cost] 引用當前行中“Cost”列中的值。如果當前行中“Cost”列的值為 100,則 =[Cost]*3 返回 300。

通過引用,可以在一個或多個公式中使用列表或庫的不同列中所包含的資料。可以在公式中引用下列資料類型的列:單行文本、數字、貨幣、日期和時間、選擇、是/否以及計算資料行。

可以使用列的顯示名稱在公式中引用該列。如果名稱中包含空格或特殊字元,則必須將名稱括在方括弧 ([ ]) 中。引用不區分大小寫。例如,可以在公式中使用 [Unit Price] 或 [unit price] 來引用“Unit Price”這一列。

 注釋 

  • 不能引用當前行以外的行中的值。
  • 不能引用其他列表或庫中的值。
  • 不能通過行 ID 引用新插入的行。因為執行計算時該 ID 尚不存在。
  • 不能在為某列建立預設值的公式中引用其他列。

在公式中使用常量

常量是不用計算的值。例如,日期 10/9/2008、數字 210 以及文本“季度收入”都是常量。常量可以是下列資料類型:

  • String(樣本:=[Last Name] = "Smith")

    String 常量括在引號中,最多可以包含 255 個字元。

  • Number(樣本:=[Cost] >= 29.99)

    Numeric 常量可以包含小數位元,可以是正數或負數。

  • Date(樣本:=[Date] > DATE(2007,7,1))

    Date 常量要求使用 DATE(year,month,day) 函數。

  • Boolean(樣本:=IF([Cost]>[Revenue], "Loss", "No Loss")

    “Yes”和“No”是 Boolean 常量。可以在條件表達中使用 Boolean 常量。在上面的樣本中,如果“Cost”大於“Revenue”,則 IF 函數返回“Yes”,該公式返回字串“Loss”。如果“Cost”等於或小於“Revenue”,則該函數返回“No”,並且該公式返回字串“No Loss”。

在公式中使用運算子

運算子指定要對公式中的元素執行的運算的類型。列表和庫支援三種不同類型的運算子:算術運算子、比較子和文本運算子。

算術運算子

可使用下列算術運算子來執行加法、減法或乘法等基本數學運算,組合數字或者產生數字結果。

算術運算子 含義(樣本)
+(加號) 加法運算 (3+3)
–(減號) 減法運算 (3–1)
負數 (–1)
*(星號) 乘法運算 (3*3)
/(正斜杠) 除法運算 (3/3)
%(百分比符號) 百分比 (20%)
^(插入符號) 乘冪運算 (3^2)
比較子

可以使用下列運算子對兩個值進行比較。使用這些運算子對兩個值進行比較時,結果是一個邏輯值“Yes”或“No”。

比較子 含義(樣本)
=(等號) 等於 (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

在下面的樣本中,公式中第一部分周圍的括弧強制列表或庫先計算 [Cost]+25,然後用結果除以列 EC1 和 EC2 中的值之和。

=([Cost]+25)/SUM([EC1]+[EC2]) 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.