計算式では、計算結果として数値・時間・経過時間・文字を求めることができます。
「ラベル」で編集属性が「数値」または「通貨」のみ計算式を記述できます。
計算式には、「テキスト(数値)」「ラベル」で編集属性が「数値」「通貨」の項目名称および数値定数を記述できます。
- 使える演算記号
加算: +
減算: –
乗算: *
除算: /
余り: % - 使える関数
合計: SUM
ページ間合計: TOTAL (*1)
平均: AVERAGE
桁処理: ROUND, ROUNDUP, ROUNDDOWN
最大値: MAX
最小値: MIN
絶対値: ABS
整数化: INT
平方根: SQR - 関数の記述方法 (*3)
個別合計: SUM(項目名称,項目名称,項目名称, ….)
共通変数範囲合計: SUM(項目共通名称:開始No:終了No) ※a
ページ間合計: TOTAL(項目名称) ※d (*1)
個別平均: AVERAGE(項目名称,項目名称,項目名称, ….)
共通変数範囲: AVERAGE(項目共通名称:開始No:終了No) ※a
四捨五入: ROUND(項目名称,桁数) ※b
切上げ: ROUNDUP(項目名称,桁数) ※b
切捨て: ROUNDDOWN(項目名称,桁数) ※b
個別最大値: MAX(項目名称,項目名称,項目名称, ….)
共通変数範囲最大値: MAX(項目共通名称:開始No:終了No) ※a
個別最小値: MIN(項目名称,項目名称,項目名称, ….)
共通変数範囲最小値: MIN(項目共通名称:開始No:終了No) ※a
絶対値: ABS(項目名称)
整数化: INT(項目名称) ※c
平方根: SQR(項目名称)
複写: 項目名称
※a 項目共通名称とは項目名称から末尾の連番を除いた名称です。
項目が明細繰り返し項目のとき、項目名称に_を付与する必要があります。 (*2)
(例)数量_
開始No, 終了Noとは項目共通名称に続く連番です。
※b 桁数には有効桁数を指定します。
桁数が1 のときは、小数第2位を丸めて小数第1位の値にします。
桁数が0 のときは、小数第1位を丸めて整数の値にします。
桁数が-1 のときは、整数1位を丸めて整数の値にします。
※c 整数化の際に小数点以下は切捨てます。
※d FormPatのデータ入力時にページ追加を行い、すべてのページ合計を求めるときに使用します。 - 計算式の記述例
四則演算: ((項目1+項目2-項目3)*項目4)/項目5
個別合計: SUM(項目1,項目3,項目5,項目8)
共通変数範囲合計(項目1~項目10): SUM(項目:1:10)
個別平均: AVERAGE(項目3,項目5)
共通変数範囲合計(項目3~項目20): AVERAGE(項目:3:20)
四捨五入: ROUND(項目1,3)
切上げ: ROUNDUP(項目1,3)
切捨て: ROUNDDOWN(項目1,3)
個別最大値: MAX(項目2,項目3,項目5,項目9)
共通変数範囲最大値(項目1~項目10): MAX(項目:1:10)
個別最小値: MIN(項目3,項目4,項目6,項目8)
共通変数範囲最小値(項目3~項目20): MIN(項目:3:20)
絶対値: ABS(項目1)
整数化: INT(項目1)
平方根: SQR(項目1)
複写: 項目1
※ + – * / % , : () の前後にはスペースを入れないでください。
※ + – * / % , : () は半角文字を使用してください。 - 計算式の結果例
項目1が123.4567 の場合
ROUND(項目1,3) → 123.457
ROUNDUP(項目1,3) → 123.457
ROUNDDOWN(項目1,3) → 123.456
INT(項目1) → 123 - 分岐計算式の記述方法
条件ごとの計算式を記述できます。
[基本構文]
SELECT(条件式,計算式):
条件式で数値を比較し、真なら計算式を実行します。
条件式には、「テキスト(数値)」「ラベル」で編集属性が「数値」「通貨」または「テキスト(時刻・時間)」「ラベル」で編集属性が「時間」の項目名称および数値定数を記述できます。
ただし、編集属性が「時間」の項目はすべて秒単位で処理されます。
SELECTM(条件式,計算式):
条件式で文字を比較し、真なら計算式を実行します。
条件式には、「テキスト(文字)」「ラベル」で編集属性が「標準」「標準(全角)」「標準(半角)」の項目名称および文字定数を記述できます。[条件式で使える演算子]
<はLT
≦はLE
=はEQ
>はGT
≧はGE
≠はNE
&は&&
※条件式では上記以外の演算子は使用禁止です。
※条件式および計算式に分岐計算式(SELECT、SELECTM)、関数(SUM、ROUND 等)も使用禁止です。
※SELECT()、SELECTM()間の区切りは | を使用します。| の前方の条件一致が優先されます。
※条件式のすべての項目に値が入力されているときに処理されます。1つでも未入力ならブランクを出力します。 - 分岐計算式の記述例
A=10~20 のときA+40、B=”D~F”のときA+50、それ以外はA+60
SELECT(10 ⊔ LE ⊔ A ⊔ && ⊔ A ⊔ LE ⊔ 20,A+40)|SELECTM(“D” ⊔ LE ⊔ B ⊔ && ⊔ “F” ⊔ GE ⊔ B,A+50)|A+60
※ A は「テキスト(数値)」、B は「テキスト(文字)」。
尚、⊔ は半角スペースの意味です。
※ + – * / % , | () の前後にはスペースを入れないでください。
※ + – * / % , | () は半角文字を使用してください。
「ラベル」で編集属性が「時間」のみ計算式を記述できます。
計算式には、「テキスト(時刻・時間)」「ラベル」の編集属性が「時間」または「テキスト(数値)」で編集属性が「数値」「通貨」の項目名称および数値定数のみ記述できます。
ただし、「数値」「通貨」の値は秒として計算されます。また、数値定数は秒のみ記述できます。
- 使える演算記号
加算: +
減算: –
乗算: *
除算: / - 計算式の記述例
四則演算: 項目1+項目2-項目3
複写: 項目1
「ラベル」で編集属性が「時間」のみ計算式を記述できます。
計算式には、「テキスト(時刻・時間)」「ラベル」で編集属性が「時刻」の項目名称のみ記述できます。
- 使える関数
経過時間:TIMESPAN - 関数の記述方法
経過時間:TIMESPAN(開始日付項目名称,開始時刻項目名称,終了日付項目名称,終了時刻項目名称)
開始日付項目名称および終了日付項目名称は省略可能です。
省略する場合、TIMESPAN(“”,開始時刻項目名称,””,終了時刻名称)と記述します。このとき、開始時刻>終了時刻なら日付またがりと判断します。
「ラベル」で編集属性が「標準」のみ計算式を記述できます。
計算式には、「テキスト(文字)」「ラベル」で編集属性が「標準」「標準(全角)」「標準(半角)」の項目名称および文字定数のみ記述できます。
ただし、STRSELECTの条件式には、「テキスト(数値)」「ラベル」で編集属性が「数値」「通貨」の項目名称を記述できます。
- 使える演算記号
結合: + - 計算式の記述例
文字列結合: 項目1+項目2+項目3
複写: 項目1 - 分岐計算式の記述方法
条件ごとの計算式を記述できます。
[基本構文]
STRSELECT(条件式,計算式):
条件式で数値を比較し、真なら計算式を実行します。
条件式には、「テキスト(数値)」「ラベル」で編集属性が「数値」「通貨」および「テキスト(時刻・時間)」「ラベル」で編集属性が「時間」の項目名称および数値定数を記述できます。
ただし、編集属性が「時間」の項目はすべて秒単位で処理されます。また、数値定数でも秒のみ記述できます(時間単位は記述できません)
STRSELECTM(条件式,計算式):
条件式で文字を比較し、真なら計算式を実行します。
条件式には、「テキスト(文字)」「ラベル」で編集属性が「標準」「標準(全角)」「標準(半角)」の項目名称および文字定数を記述できます。
[条件式で使える演算子]
<はLT
≦はLE
=はEQ
>はGT
≧はGE
≠はNE
&は&&
※条件式では上記以外の演算子は使用禁止です。
※計算式では結合記号 + を使用できます。
※条件式および計算式に分岐計算式(STRSELECT、STRSELECTM)は使用禁止です。
※STRSELECT()、STRSELECTM()間の区切りは | を使用します。| の前方の条件一致が優先されます。
※条件式のすべての項目に値が入力されているときに処理されます。1つでも未入力ならブランクを出力します。 -
分岐計算式の記述例
A=10~20 のとき”あいうえお”、B=”D~F”のとき”かきくけこ”、それ以外は”その他”
STRSELECT(10 ⊔ LE ⊔ A ⊔ && ⊔ A ⊔ LE ⊔ 20,”あいうえお”)|STRSELECTM(“D” ⊔ LE ⊔ B ⊔ && ⊔ “F” ⊔ GE ⊔ B,”かきくけこ”|”その他”
※ A は「テキスト(数値)」、B は「テキスト(文字)」。
尚、⊔ は半角スペースの意味です。
※ + – * / % , | () の前後にはスペースを入れないでください。
※ + – * / % , | () は半角文字を使用してください。
日付の複写は「ラベル」で編集属性が「日付」、時刻の複写は「ラベル」で編集属性が「時刻」のみ計算式を記述できます。
計算式には、日付の複写は「テキスト(日付)」、時刻の複写は「テキスト(時刻・時間)」で編集属性が「時刻」の項目名称だけを記述します。
*1 FormPat v7.0.0 および デザイナー v7.0.0以降の機能です。
*2 デザイナー v6.0.0 以降の機能です。
*3 計算式では、関数の複数の組み合わせや四則演算と関数の組み合わせの定義はできません。関数の中に関数を定義する入れ子構造も定義できません。また、明細繰り返し項目の同じ明細行では「項目共通名称」を定義する関数は使用できません。
*4 FormPat v7.1.0 以降の機能です。
*5 FormPat v7.2.0 以降の機能です。