在控制項中加、減、乘、除數

套用到
InfoPath 2010 InfoPath 2013

你可以利用公式計算控制項的價值,並根據使用者輸入到其他控制項的資料,幫助使用者根據表單範本填寫表單。 計算過程可能包括加、減、乘及除。 例如,如果您設計一份電力承包商申請許可的範本,可以在控制項中加入公式,透過將申請中的許可證數量乘以每個許可證的價格,自動計算承包商必須支付的總價。

本文內容

什麼是公式?

公式是一種XPath表達式,由數值、欄位或群組、函數及運算子組成,用於計算和顯示其他值。 公式可用於完成以下任務:

  • 從設計表單範本時指定的數值,或使用者填寫表單時輸入的數值,計算數學值。
  • 顯示具體日期和時間。
  • 在另一個控制項中,顯示使用者輸入的數值。
  • 設定欄位或控制項的預設值。
  • 根據公式計算出的數值執行規則。

每個用於公式的 XPath 表達式都是數值、函數和運算子的組合,計算出單一值。 一個公式可以包含多個表達式。 你可以把公式想像成由一個或多個片語組成的句子,每個片語代表公式中的一個表達式。

以下圖示展示了公式與表達式之間的關係。

046C2CB3-2A43-40C6-af65-5f7ee9C0E1A4

函數是一種根據計算結果回傳數值的表達式。 函式中使用的值稱為參數。 你可以使用InfoPath內建的標準XPath 1.0函式,以及一些InfoPath專屬的功能。 在「 參見 」區塊中可找到更多關於 InfoPath 功能的連結。

頁首

在公式中使用兩個或以上運算子

當公式包含兩個或以上的數學運算子時,InfoPath 會根據運算子的優先順序進行計算。 以下列表顯示操作執行的順序:

  1. 括號內的計算
  2. 乘除法計算
  3. 加減計算

若公式包含兩個優先順序相同的運算子,計算依左至右進行。

舉例來說,假設你正在建立一份許可申請表範本,裡面有一個文字框,顯示申請中所有申請許可的總費用。 此公式所需的數值來自表單中的其他文字框。 顯示總成本的文字框包含以下公式:

txtPermit1Qty * txtPermitCost1 + txtPermit2Qty * txtPermitCost2 /txtNumberOfPermits

此公式包含加法 (+) 、乘法 (*) ,以及除法 (/) 算符。 根據運算子的先例,乘除計算會在加法計算之前進行。 由於乘法與除法運算子具有相同的優先順序,乘法運算子位於除法運算子的左側,因此乘法運算子位於除法運算子的左側,因此計算在除法運算子之前進行。 公式的計算方式如下:

  1. txtPermit1Qty 中的值與 txtPermitCost1 中的值相乘。
  2. txtPermit2Qty 中的值與 txtPermitCost2 的值相乘,然後再除以 txtNumberOfPermits 的值。
  3. 步驟1的計算結果會加到步驟2的計算結果中。

要控制計算順序,請用括號內附上你想先完成的計算內容。 括號內的計算會在括號外的計算之前進行。 將帶括號的計算放在無括號計算的左側。 巢狀括號內的計算從內括號到外括號進行。

例如,考慮以下公式:

( (txtPermit1Qty * txtPermitCost 1) + (txtPermit2Qty * txtPermitCost2) ) /txtNumberOfPermits

在此計算中,將 txtPermit1QtytxtPermitCost1 中的值相乘所得值,與 txtPermit2QtytxtPermitCost2 的值相乘所得值相加。 該計算結果的總和會除以 txtNumberOfPermits 中的數值。

頁首

將數學公式插入控制項

  1. 雙擊你想建立公式的控制項或欄位。

  2. 按一下 [資料] 索引標籤。

  3. 點擊 插入公式6aeee2be-ff9c-4a64-a987-2db942c81046

  4. 若要在公式中插入值或數學運算子,請在 公式 框中輸入數學運算的值或符號。
    數學運算列表

    運作 象徵
    新增 +
    [減] -
    [乘] *
    [除] /

    注意

    如果你的公式使用除法 (/) 運算子,請確保除法運算子前後各有空格。 如果除法運算子前後沒有空格,InfoPath 可能會將 '/' 解讀為 XPath 位置步驟的分隔符,而非除法運算子。

    秘訣

    數學公式通常依賴整數或十進位作為參數。 為了避免公式中出現空白值,請在表單選項對話框的進階分類中勾選「將空白值視為零」的勾選框。

  5. 要檢查正確的語法,請在 「插入公式 」對話框中點擊 「驗證公式」。
    我的公式包含錯誤
    點擊 Microsoft Office InfoPath 對話框中的「顯示詳細資訊」以查看公式中的錯誤。 以下是一些解決這些錯誤的建議:

    • 如果你在公式中使用函數,請確認你使用的參數是正確的。 有些函式需要欄位或群組,而有些函式則需要指定值作為參數。 在「 另見 」部分找到更多功能相關資訊的連結。
    • 刪除並重新輸入你的公式,確保輸入正確。
  6. 若要測試變更,請按一下 [標準] 工具列上的 [預覽],或按 CTRL+SHIFT+B。

頁首