計算欄位公式與函數

上次更新時間 2026年11月2日

在 Adobe Acrobat Sign 中,使用欄位參照、常值、運算子和函式來建立計算欄位的公式。

在設定為「值類型 > 計算」的欄位的「公式」屬性中輸入公式。 此參照說明可用於建立這些公式的運算式語法。

若要設定欄位本身,請參閱建立計算欄位。

建立公式

公式可以包含以下一個或多個元素:

元素 使用於 範例
欄位參照 使用其他欄位的值 price * quantity
常值 包含固定數字、文字值或日期 total * 0.10
運算子 執行算術、比較或文字運算 subtotal + tax
函數 執行預先定義的計算或邏輯運算 max(value1, value2)

公式也可以參照其他計算欄位。

依名稱參考欄位

使用欄位名稱以便在公式中參照其值。

例如:

price * quantity

使用名為 price 和 quantity 的欄位的值。

如果欄位名稱包含空格,請將完整名稱括在方括號中:

[Unit price] * quantity

請使用有意義且唯一的欄位名稱,以便表單變更時公式仍然易於理解。

欄位名稱要求,請參閱表單欄位屬性。

使用常值

常值是直接包含在公式中的固定值。

例子包括:

  • 數字:10
  • 文字:"Approved"
  • 支援的日期函數所使用的日期

將文字字串括在單引號或雙引號中。

例如:

「已核准」

文字值可以與欄位、運算子及函數結合使用。

支援的運算子

使用運算子執行計算、合併文字或比較值。

運算子 運算
+ 加法
- 減去
/ 分割
* 色彩增值
& 合併文字字串
= 等於
!= 不等於
< 小於
<= 小於或等於
> 大於
>= 大於或等於
% 傳回除法後的餘數
^ 將值提升為次方

比較運算子會傳回「真」或「假」的結果,並可在邏輯函數中使用。

例如:

total >= 1000

評估 total 的值是否至少為 1000。

數學函數

函數 結果
abs(number1) 傳回數字的絕對值。
roundUp(number1) 將數字無條件進位。
roundDown(number1) 將數字無條件捨去。
round(number1) 將數字無條件進位至最接近的整數。
min(number1,number2) 傳回兩個數字中較小的數字。
max(number1, number2) 傳回兩個數字中較大的數字。

範例

max(Amount1, Amount2)

傳回兩個欄位值中較大的一個。

日期函數

函數 結果
datePart(part, date) 將日期的指定部分傳回為整數。
dateAdd(part, date, addition) 將指定的日期單位數加到日期中。使用負值即可執行減去。
dateDiff(part, date1, date2) 使用指定日期部分,傳回兩個日期之間的差異。
daysIn(part, date) 傳回特定日期區間中的的天數。
date(string) 將代表日期的文字值轉換為日期值,以供其他函數使用。
now() 當公式進行評估時,會傳回日期和時間。

日期部分值

在支援的日期函數中,將下列值用於 part 引數:

值 日期或時間部分
y 年
q 季
m 月
d 日
h 小時
n 分
s 秒

範例

dateAdd("d", StartDate, 30)

將 StartDate 欄位的值加上 30 天。

使用負數即可計算較早的日期:

dateAdd("d", StartDate, -7)

邏輯函數

當計算值取決於一個或多個條件時,請使用邏輯函數。

函數 結果
if(logical_test, value_if_true, value_if_false) 當測試為真時傳回一個值,為假時傳回另一個值。
and(logical1, logical2, ...) 只有在所有指定條件均為真時,才會傳回真。
or(logical1, logical2, ...) 在指定條件中至少有一個為真時,會傳回真。
not(logical) 反轉真結果或假結果。
lookup(sourceField, values, default_value) 傳回與來源欄位相關聯的值,如果找不到符合項目,則傳回預設值。

使用 if 在結果之間選擇

例如:

if(Total >= 1000, "Approval required", "Approved")

當 Total 至少為 1000 時,會傳回一個文字值;否則傳回另一個文字值。

真結果或假結果本身可以包含運算式。

結合邏輯測試 (and、or、not)

當每個條件都必須為真時,請使用 and:

and(Age >= 18, Consent = "Yes")

當任何條件可以為真時,請使用 or:

or(State = "CA", State = "OR")

當您需要條件的相反時,使用 not:

not(Status = "Closed")

使用 lookup 將一個值對應到另一個值

當來源值應傳回對應值時使用 lookup。

例如:

lookup(State, "CA=California,UT=Utah,WA=Washington", "Other")

如果符合項目,則傳回對應的狀態名稱,否則傳回 Other。

當來源值來自一組已定義的選項 (例如下拉式選單或選項按鈕欄位) 時,這非常有用。

公式範例

計算金額

quantity * [Unit price]

將數量乘以單價。

新增數個值

subtotal + tax + shipping

將三個欄位的值相加。

計算百分比

subtotal * taxRate

將一個欄位乘以儲存在另一個欄位中的比率。

有條件地傳回值

if(quantity >= 10, [Unit price] * 0.9, [Unit price])

當數量達到已定義的臨界值時,會傳回折扣值。

計算未來日期

dateAdd("m", StartDate, 12)

傳回 StartDate 之後 12 個月的日期。

合併文字

RecipientName & " - " & Company

將欄位值與常值文字結合成一個結果。

建置更容易維護的公式

使用具描述性的欄位名稱,並在表單允許的範圍內,盡量簡化相關計算。

審閱公式時,請確認以下事項:

  • 每個參照的欄位都存在。
  • 欄位名稱符合公式中使用的名稱。
  • 包含空格的欄位會以方括號括住。
  • 文字常值會以引號括住。
  • 函式包含必要的引數。
  • 計算欄位會針對預期的收件人輸入產生預期的值。

如需設定計算欄位及格式化數字結果的相關資訊,請參閱建立計算欄位。