注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。 このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。私たちの目的は、このコンテンツがお客様の役に立つようにすることです。お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。 簡単に参照できるように、こちらに 英語の記事 があります。
ユーザーのユーザーが他のコントロールに入力されるデータに基づいて、コントロールの値を計算する数式を使用してフォーム テンプレートに基づくフォームに入力することができます。計算には、追加、減算、乗算、および除算を含めることができます。たとえばをデザインする場合に適用する申請を使用するフォーム テンプレートを許可、コントロールを自動的にアプリケーションで支払いの数を乗算した請負業者価格の合計を計算する数式を追加することができます。許可の価格をアプリケーションに許可します。
この記事の内容
数式とは何ですか。
数式は、XPath 式値、フィールドまたはグループ、関数、および演算子の計算やその他の値を表示するために使用されています。数式を使用して、次のタスクを実行できます。
-
フォーム テンプレートに基づくフォームに入力するときに、ユーザーがコントロールに入力した値、フォーム テンプレートをデザインする際の指定された値から数値を計算する.
-
特定の日付と時刻を表示します。
-
ユーザーが他のコントロールの 1 つのコントロールに入力した値を表示します。
-
フィールドまたはコントロールの既定値を設定します。
-
数式を使って計算された値に基づいてルールを実行します。
数式で使用されている各 XPath 式は、1 つの値に評価される値、関数、および演算子の組み合わせです。数式には、いくつかの式を含めることができます。数式を数式内の 1 つの式を表す各語句の 1 つまたは複数の語句の文と考えることことができます。
次の図は、数式と式の関係を示します。
関数とは計算の結果に基づいた値を返す式です。関数内で使用される値は、引数と呼ばれます。InfoPath 固有の一部の機能のほか、InfoPath に含まれている標準 XPath 1.0 関数を使用することができます。[参照] セクションで InfoPath 関数に関する詳細情報へのリンクを検索します。
数式で 2 つまたは複数の演算子を使用します。
数式には、2 つ以上の算術演算子が含まれている、InfoPath は演算子の優先順位に従って計算を実行します。操作の実行順序を次に示します。
-
かっこ内での計算
-
乗算と除算
-
加算および減算
数式の優先順位が同じである 2 つの演算子の場合は、左から右に計算が行わします。
たとえば、アプリケーションですべての送信アクセス権の総コストを表示するテキスト ボックスのある許可申請フォーム テンプレートを作成することがあるとします。次の数式で必要な値は、フォームの場合は、その他のテキスト ボックスから取得します。コストの合計を表示するテキスト ボックスには、次の数式が含まれています。
txtPermit1Qty * txtPermitCost1 + txtPermit2Qty * txtPermitCost2/txtNumberOfPermits
追加 (+)、(*)、乗算および除算 (/) 演算子は、次の数式が含まれます。演算子の優先順位、に従って加算する前に、乗算と除算の計算が実行されます。乗算と除算演算子の優先順位が同じため、乗算演算子が除算演算子の左側にあるため除算演算子の前に乗算計算が完了します。数式は、次のように計算されます。
-
TxtPermit1Qtyの値は、 txtPermitCost1の値で乗算します。
-
TxtPermit2Qtyの値は、 txtPermitCost2] の値で乗算し、その結果、 txtNumberOfPermitsの値で割ります。
-
手順 1 での計算結果は、手順 2 で計算の結果に追加されます。
計算順序を制御するには、かっこで囲まれた最初に実行する計算を囲みます。かっこの外側の計算の前に、かっこで囲まれた計算が実行されます。かっこを使用して計算をかっこせずに計算の左側に配置します。入れ子になったかっこで囲まれた計算を実行するには、外部のかっこを内側から操作します。
たとえば、次の数式を検討してください。
((txtPermit1Qty * txtPermitCost1) + (txtPermit2Qty * txtPermitCost2))/txtNumberOfPermits
、この計算からtxtPermit2QtyとtxtPermitCost2の値を乗算結果の値にtxtPermit1QtyとtxtPermitCost1の値を乗算から結果の値が追加されます。計算の合計がtxtNumberOfPermitsの値で割っています。
コントロールに数式を挿入します。
-
数式を作成するコントロールまたはフィールドをダブルクリックします。
-
[データ] タブをクリックします。
-
数式を挿入する をクリックします。
-
値または算術演算子を数式に挿入するには、[式] ボックスで算術演算の記号または値を入力します。
算術演算子の一覧
演算
記号
追加
+
減算します。
-
積を求める
*
除算します。
/
注: 数式では、除算 (/) 演算子を使用する場合は、除算演算子の前後にスペースが認識があることを確認します。除算演算子には前に、のスペースがない場合、後 InfoPath が内容を理解する '/XPath 場所手順の区切り記号としてではなく、除算演算子。
ヒント: 数式は、通常、引数として整数または小数点以下の値に依存します。数式内の空白値を避けるためには、フォームのオプション] ダイアログ ボックスで [詳細設定] カテゴリで空白の値を 0 として扱う] チェック ボックスを選択します。
-
[数式の挿入] ダイアログ ボックスで、正しい構文の数式を確認するには、数式の確認をクリックします。
数式には、エラーが含まれています。
詳細の表示] ダイアログ ボックスの [ Microsoft Office InfoPath数式のエラーを表示する] をクリックします。これらのエラーを解決するためのいくつかの提案を次に示します。
-
実際の数式で関数を使っている場合は、適切な関数の引数を使用していることを確認します。一部の機能には、その他の関数に引数として指定された値が必要なときにフィールドまたはグループが必要があります。[参照] セクションで関数に関する詳細情報へのリンクを検索します。
-
削除し、正しく入力されているかどうかを確認する数式を再入力します。
-
-
変更内容をテストするには、[標準] ツール バーの [プレビュー] をクリックするか、Ctrl キーと Shift キーを押しながら B キーを押します。