如何在 Adob​​e Acrobat 中創建條件公式

已發表: 2022-01-29
Adobe Acrobat Pro 徽標
土坯

有幾種方法可以在乾淨優雅的 PDF 文件中創建複雜的計算。 以下是如何將條件公式集成到您的下一個文檔中。

Acrobat 中的條件公式

我們之前介紹了 Adob​​e Acrobat 中自動計算的基礎知識。 條件公式讓您超越基礎,在 PDF 中創建更複雜的公式。

相關:如何在 Adob​​e Acrobat 中使用計算創建 PDF 表單

如果您在 Excel 或 Google 表格中使用公式,您可能已經知道什麼是條件公式。 也稱為邏輯公式,如果滿足特定條件(例如數字為負數或分數高於及格分數),它們會顯示特定值或激活計算。 Excel 中一些最常見的條件公式包括標準的“IF”以及“SUMIF”和 COUNTIF。 還有條件格式,如果單元格滿足特定條件,則會更改格式。

使用計算字段,這些類型的公式也可以應用於 Adob​​e PDF。 您可以顯示數字、文本或根據另一個輸入框的結果運行計算。 您還可以將它們與其他計算字段結合使用。 條件公式對許多類型的 PDF 表單都很有用,例如:

  • 財務文件:例如,如果委託人確定某人的利率,則可以使用條件公式根據他們輸入的金額顯示相應的價格。
  • 測試和考試:您可以進行評估,根據應試者的總分在最後自動顯示“通過”或“失敗”。
  • 銷售:如果您將其用於交易,您可以製作一個框,根據潛在買家對特定問題的回答來推薦產品。

請注意,雖然計算字段只能在 Adob​​e Acrobat 中進行,但實際計算將顯示在任何 PDF 閱讀器中。

創建簡單的條件語句

Adobe Acrobat 的自定義計算字段使用 javascript 作為編程語言。 幸運的是,你不需要知道如何用 javascript 編程來創建一個簡單的條件字段; 你只需要一個基本的模式來遵循。

廣告

在下面的示例中,我們將使用這個簡單的公司訂單表格。 這目前有七個字段:一個用於五種產品中每一種的數量、總量和總價格。

Adobe Acrobat 簡單表格

Adobe javascript 中的條件語句遵循以下基本語法:

var variable name = this.getField(" name of field ").value;
if( variable name condition ) event.value = true result
else event.value = false result

第一行定義將用於條件公式的值。 在這種特殊情況下,我們使用“this.getField”來獲取文檔中其他字段之一的值。 在第二行,我們定義條件。 與 excel 類似,我們將條件指定為大於、小於或等於特定值。

最後,我們定義結果。 真正的結果是滿足條件時將顯示的值。 在下一行,我們使用“else”來生成false 結果,即如果不滿足條件將顯示的值。

廣告

為了將其付諸實踐,我們創建了一個名為“批量訂單”的計算字段。 要輸入自定義計算腳本,請在 Acrobat 中右鍵單擊所選字段,然後選擇“屬性”。 從這裡,轉到“計算 > 自定義計算腳本 > 編輯”。

Adobe Acrobat 自定義計算

此字段將確定訂單是否算作批量。 如果總數量大於 20 件,該框將顯示“是”,如果少於 20 件,則顯示“否”。考慮到這些條件,我們有公式:

var TQ = this.getField(" Total Quantity" ).value;
if( TQ > 20 ) event.value = "Yes"
else event.value = "No"

在上圖中,您可以看到我們將變量名稱設置為“TQ”,並從“Total Quantity”字段中提取 TQ 的值。 請注意,這些字段區分大小寫。 然後,我們設置我們的條件,就是TQ必須大於20,如果滿足這個條件,就會顯示“是”。 否則,該框將生成“否”。

Adobe Acrobat Javascript

例如,如果我們總共訂購了 11 根 Lightning 電纜和 10 個電池組,我們總共有 21 件商品。 然後將其視為批量訂單,並生成以下結果:

Adobe Acrobat 訂單結果

多個條件

在某些情況下,您可能希望滿足多個條件而不僅僅是一個條件。 幸運的是,有一種方法可以創建基於多個條件生成值的條件字段。

Adobe Acrobat 多重條件

廣告

假設在您的商店中,所有達到至少 20 種產品且總價為 150 的訂單都有資格享受 10% 的折扣。 最終金額將出現在一個名為“Total With Discount”的字段中。 在這種情況下,我們必須指定兩個變量和兩個條件。 我們將有以下字段:

var Price = this.getField(" Initial Price ").value;
var TQ = this.getField(" Total Quantity ").value;
if( Price > 150 && TQ > 20 ) event.value = Price*0.9 ;
else event.value = Price ;

如您所見,我們在兩條單獨的行上定義了兩個變量。 您還必須使用“&&”符號來組合兩個不同的條件。 請注意,最終值也是考慮了折扣的計算。

因此,如果我們使用與上面示例相同的總數,我們將生成以下結果:

Adobe Acrobat 多條件結果

計算訂單

您應該考慮的一個重要因素是計算順序。 與同時呈現計算的 Excel 不同,Acrobat 依賴於用戶來確定先出現哪些公式。

要設置計算順序,請轉到“編輯表單”側邊欄並導航至更多 > 設置字段計算順序。 在上面的例子中,因為 Bulk Order 和 Total With Discount 的公式都依賴於 Total Quantity 和 Total Price,所以我們要確保首先計算 TQ 和 TP。

Adobe Acrobat 字段計算

廣告

請務必在發布表單之前查看計算順序。 最好在表單上嘗試一些示例輸入,以確保一切正常。