kintoneの計算式フィールドのエラーは、出るタイミングで原因の調べ方が変わります。設定を保存するときのエラーは、フィールドコードの指定ミスや循環参照など式そのものの書き方の問題です。レコード入力時に値の欄に出る「#ERROR!」のような記号は、入力した値によって計算が成立しなかった場合に表示されます。公式ヘルプはこの2つの場面ごとにエラーを分けて説明しているため、まずどちらの場面かを確認すると原因を絞りやすくなります。
保存時のエラーは、式の書き方そのものを指している
設定画面で計算式を保存しようとして出るエラーは、式の構文か参照先の問題です。公式ヘルプには「フィールドの参照が循環しています。」という表示が載っており、計算式が自分自身や、互いを参照し合う別の計算フィールドを指していると出ます。ほかに「計算式に含まれるフィールドコード(***)が存在しません。」という表示もあり、フォームに置いていないフィールドコードを式の中で指定した場合に出ます。全角の記号や演算子の入力ミス、括弧の対応が取れていない場合も、同じ保存時のタイミングでエラーになります。
レコード入力時に出る記号は、値と式の食い違いを示している
レコードを入力・保存したときにフィールドの値欄に表示される記号は、保存時のエラーとは別の分類です。公式ヘルプには、計算結果が0で割る計算を含む場合などに表示される「#ERROR!」、文字列に数値を足すなど演算子とデータ型の組み合わせが合わないときの「#VALUE!」、計算結果が文字列になってしまい数値や日付に変換できないときの「#CONVERT!」、有効桁数の設定を超えたときの「#PRECISION!」が載っています。式そのものは保存できているのに、入力した値の組み合わせによって初めて表れるのがこの種類です。
まず、エラーがどこに出ているかを見る
原因を切り分ける最初の一歩は、エラーが出ている場所を見ることです。設定画面の保存操作でエラーメッセージが表示されるなら、式の構文か参照先フィールドの問題です。レコードの値欄に記号が出ているなら、入力した値と式の相性の問題です。どの記号が出ているかを公式ヘルプの一覧と照合すれば、「#ERROR!」は0除算や指数の範囲、「#VALUE!」は演算子とデータ型の組み合わせ、という形で絞り込めます。計算式を直接書いていない担当者でも、記号の種類から相談先に伝える情報を整理できます。
式が複雑なアプリでは、原因の分類だけでは足りないこともある
保存時のエラーとレコード入力時の記号は仕組みとして分かれているため、標準の案内だけで原因の方向はおおむね絞れます。ただしテーブル内のフィールドを参照する式など配列型の値を扱う式では、公式ヘルプも「配列型の値に対して適切な関数が利用されていません。」という別分類のエラーを挙げており、確認箇所が1つ増えます。計算式を連鎖させているアプリでは、どの計算フィールドが参照の起点かを各フィールドの式で確かめてから直す順番を決めると手間が減ります。まずは2つの場面の分類に当てはめることが近道です。


