計算結果に「#エラー」と表示されてしまう

演算フィールドに設定した式の構文が正しくても、フィールドに入力されている値に問題があると、演算フィールドに「#エラー」と表示されます。

例えば8けたの数字を日付に変換する式で元データのけた数が足りなかったり、割り算の式で割る数のフィールドに0が入力されている場合にエラーになります。

どのようなエラーが出るかを想定し、IIf関数やNz関数で場合分けするなど、エラー表示が出ないような式を作成することが大切です。

計算結果に何も表示されない

テーブルのデータが未入力だと、計算結果が未入力の状態になることがあります。例えば「合計:[ 金額]+[手数料]」が設定された演算フィールドでは、[手数料]フィールドが未入力だと、[合計]フィールドがNullになります。

このような場合は、Nz関数を使用すると、Nullを0と見なして計算結果を表示できます。

計算結果に誤差が出てしまう

数値型の単精度浮動小数点型のフィールドは2進数で数値を扱いますが、2進数は小数を正確に計算できません。そのため、小数部分に誤差が出ることがあります。誤差が出ないようにするには、テーブルの構成を根本的に見直し、数値型の長整数型か、通貨型のデータ型を使用しましょう。

例えば「kg」単位で小数を入力するフィールドは、「g」単位の整数で入力するようにすれば誤差は出ません。また、小数で入力したい場合でも小数点第4位までの範囲なら通貨型を使用すれば誤差は出ません。通貨型のフィールドの[書式]プロパティに[数値]を指定すれば、「¥」記号を表示しないようにできます。

関連まとめ記事