計算式で、数値・時間・経過時間・文字を求めることができます。
数値を求める
「ラベル」で編集属性が「数値」または「通貨」のみ計算式を記述できます。(*3)
使える項目名称
- 「テキスト(数値)」
- 「テキスト(時刻・時間)」で編集属性が「時間」
- 「ラベル」で編集属性が「数値」,「通貨」,「時間」,「ユーザー定義 数値・通貨」
項目名称以外に数値定数を記述できます。
編集属性が「時間」の項目は秒単位で処理されます。
使える演算記号
- 加算: +
- 減算: –
- 乗算: *
- 除算: /
- 余り: %
使える関数
- 合計: SUM
- ページ間合計: TOTAL (*1)
- 平均: AVERAGE
- 桁処理: ROUND, ROUNDUP, ROUNDDOWN
- 最大値: MAX
- 最小値: MIN
- 絶対値: ABS
- 整数化: INT
- 平方根: SQR
関数の記述方法
- 個別合計: 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つでも未入力ならブランクを出力します。 (*6)
分岐計算式の記述例
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 は「テキスト(文字)」。⊔ は半角スペースの意味です。
※ + – * / % , | () の前後にはスペースを入れないでください。
※ + – * / % , | () は半角文字を使用してください。
時間を求める
「ラベル」で編集属性が「時間」のみ計算式を記述できます。(*4)
使える項目名称
- 「テキスト(数値)」
- 「テキスト(時刻・時間)」で編集属性が「時間」
- 「ラベル」で編集属性が「時間」
項目名称以外に数値定数を記述できます。数値定数は秒のみ記述できます。
「テキスト(数値)」の値は秒単位として処理されます。
使える演算記号
- 加算: +
- 減算: –
- 乗算: *
- 除算: /
計算式の記述例
- 四則演算: 項目1+項目2-項目3
- 複写: 項目1
経過時間を求める
「ラベル」で編集属性が「時間」のみ計算式を記述できます。(*3)(*4)
使える項目名称
- 「テキスト(時刻・時間)」で編集属性が「時刻」
- 「ラベル」で編集属性が「時刻」
使える関数
- 経過時間:TIMESPAN
関数の記述方法
- 経過時間:TIMESPAN(開始日付項目名称,開始時刻項目名称,終了日付項目名称,終了時刻項目名称)
開始日付項目名称および終了日付項目名称は省略可能です。
省略する場合、TIMESPAN(“”,開始時刻項目名称,””,終了時刻名称)と記述します。このとき、開始時刻>終了時刻なら日付またがりと判断します。
文字を求める
「ラベル」で編集属性が「標準」のみ計算式を記述できます。(*4)
使える項目名称
- 「テキスト(文字)」
- 「ラベル」で編集属性が「標準」
項目名称以外に文字定数を記述できます。
使える演算記号
- 結合: +
計算式の記述例
- 文字列結合: 項目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 は「テキスト(文字)」。⊔ は半角スペースの意味です。
※ + – * / % , | () の前後にはスペースを入れないでください。
※ + – * / % , | () は半角文字を使用してください。
日付・時刻を複写する
日付の複写は「ラベル」で編集属性が「日付」、時刻の複写は「ラベル」で編集属性が「時刻」のみ計算式を記述できます。(*5)
使える項目名称
- 日付の複写は「テキスト(日付)」
- 時刻の複写は「テキスト(時刻・時間)」で編集属性が「時刻」
*1 FormPat v7.0.0 および デザイナー v7.0.0以降の機能です。
*2 デザイナー v6.0.0 以降の機能です。
*3 計算式では、関数の複数の組み合わせや四則演算と関数の組み合わせの定義はできません。関数の中に関数を定義する入れ子構造も定義できません。また、明細繰り返し項目の同じ明細行では「項目共通名称」を定義する関数は使用できません。
*4 FormPat v7.1.0 以降の機能です。
*5 FormPat v7.2.0 以降の機能です。
*6 FormPat v7.0.0(パッチ適用) 以降の機能です。v6.3.1 以前はSELECTの条件式の未入力項目は0として処理します。