コントロールの値の加算、減算、乗算、除算を行う

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

フォーム テンプレートに基づいて作成されたフォームにユーザーが簡単にデータを入力できるように、数式を使用して、ユーザーがあるコントロールに入力した値に基づいて別のコントロールの値を計算できます。具体的には、値の加算、減算、乗算、除算を行うことができます。たとえば、電気工事請負業者が工事許可を申請するときに使うフォーム テンプレートをデザインする場合、申請する許可の数に申請手数料の単価を乗算して、請負業者が負担する必要がある総手数料を自動的に算出する数式をコントロールに追加できます。

この記事の内容

数式とは何ですか。

数式で 2 つまたは複数の演算子を使用します。

コントロールに数式を挿入します。

数式について

数式は、XPath 式値、フィールドまたはグループ、関数、および演算子の計算やその他の値を表示するために使用されています。数式を使用して、次のタスクを実行できます。

  • フォーム テンプレートに基づくフォームに入力するときに、ユーザーがコントロールに入力した値、フォーム テンプレートをデザインする際の指定された値から数値を計算する.

  • 特定の日付と時刻を表示します。

  • ユーザーが他のコントロールの 1 つのコントロールに入力した値を表示します。

  • フィールドまたはコントロールの既定値を設定します。

  • 数式を使って計算された値に基づいてルールを実行します。

数式で使用されている各 XPath 式は、1 つの値に評価される値、関数、および演算子の組み合わせです。数式には、いくつかの式を含めることができます。数式内の 1 つの式を表す各語句で、1 つまたは複数の語句の文と、数式の考えることができます。

次の図は、数式と式の関係を示します。

数式は 1 つ以上の式から構成されています。 式は、1 つの値に評価される演算子、フィールド名、関数、リテラル、定数の任意の組み合わせです。

関数とは計算の結果に基づいた値を返す式です。関数内で使用される値は、引数と呼ばれます。InfoPath 固有の一部の機能のほか、InfoPath に含まれている標準 XPath 1.0 関数を使用することができます。[参照] セクションで InfoPath 関数に関する詳細情報へのリンクを検索します。

ページの先頭へ

数式で複数の演算子を使用する

数式に複数の演算子が含まれている場合は、演算子の優先順位に従って計算が行われます。演算の実行順序を次に示します。

  1. かっこの中の計算

  2. 乗算および除算

  3. 加算および減算

優先順位が等しい 2 つの演算子が数式で使用されている場合は、左から右の順序で計算が行われます。

たとえば、工事許可申請フォームのテンプレートをデザインする場合に、申請するすべての工事許可にかかる申請手数料の総額を表示するテキスト ボックスを配置するとします。この計算を行う数式には、フォーム上の別のテキスト ボックスの値が必要です。総手数料を表示するテキスト ボックスには、次の数式を指定します。

txtPermit1Qty * txtPermitCost1 + txtPermit2Qty * txtPermitCost2 /txtNumberOfPermits

この数式では、加算 (+)、乗算 (*)、除算 (/) の演算子が使用されています。上述した演算子の優先順位に従って、乗算と除算が加算よりも先に行われます。乗算演算子と除算演算子の優先順位は変わりませんが、乗算演算子の方が除算演算子よりも左側に配置されているため、乗算が除算よりも先に行われます。したがって、この数式の計算順序は次のようになります。

  1. txtPermit1Qty の値に txtPermitCost1 の値が乗算されます。

  2. txtPermit2Qty の値に txtPermitCost2 の値が乗算され、その積が txtNumberOfPermits の値で除算されます。

  3. 手順 1. で得られた積に、手順 2. で得られた商が加算されます。

計算の実行順序を変更するには、最初に実行する必要がある計算をかっこで囲みます。かっこで囲まれた計算が、かっこの外側の計算よりも先に行われます。かっこで囲んだ計算は、かっこで囲んでいない計算の左側に配置します。かっこが入れ子になっている場合は、内側のかっこで囲まれた計算が外側のかっこで囲まれた計算よりも先に行われます。

たとえば、次の式で確認してみましょう。

((txtPermit1Qty * txtPermitCost1) + (txtPermit2Qty * txtPermitCost2))/txtNumberOfPermits

、この計算からtxtPermit2QtytxtPermitCost2の値を乗算結果の値にtxtPermit1QtytxtPermitCost1の値を乗算から結果の値が追加されます。計算の合計がtxtNumberOfPermitsの値で割っています。

ページの先頭へ

コントロールに数式を挿入する

  1. 数式を作成する対象のコントロールまたはフィールドをダブルクリックします。

  2. [データ] タブをクリックします。

  3. [数式の挿入] Formula button をクリックします。

  4. 数式に値または算術演算子を挿入するには、その値または演算子を表す記号を [数式] ボックスに入力します。

    算術演算子の一覧

    演算

    記号

    加算

    +

    減算

    -

    乗算

    *

    除算

    /

    注: 数式では、除算 (/) 演算子を使用する場合は、除算演算子の前後にスペースが認識があることを確認します。除算演算子には前に、のスペースがない場合、後 InfoPath が内容を理解する '/XPath 場所手順の区切り記号としてではなく、除算演算子。

    ヒント: 数式は通常、引数として整数や小数を取ります。数式に空の値が渡されないようにするには、[フォームのオプション] ダイアログ ボックスの [詳細設定] カテゴリにある [空白の値を 0 として扱う] チェック ボックスをオンにします。

  5. 関数の構文が正しいかどうかを確認するには、[数式の挿入] ダイアログ ボックスの [数式の確認] をクリックします。

    数式には、エラーが含まれています。

    数式の誤りに関する情報を表示するには、[Microsoft Office InfoPath] ダイアログ ボックスの [詳細の表示] をクリックします。誤りの修正方法に関するヒントを次に紹介します。

    • 数式で関数を使用している場合は、その関数に適切な引数が渡されているかどうかを確認してください。一部の関数にはフィールドやグループを引数として指定できますが、引数として特定の値を必要とする関数もあります。関数の詳細については、[参照] に掲載されているリンクを参照してください。

    • 数式を削除してから正しく入力し直してください。

  6. 変更内容をテストするには、[標準] ツール バーの [プレビュー] をクリックするか、Ctrl キーと Shift キーを押しながら B キーを押します。

ページの先頭へ

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×