ACCESS SUMで#エラーが出る場合の対処法

SUMで#エラーが出る場合の対処法

ACCESSではフォーム上での集計値が正しく表示できない際に#エラーと表示されることがあります。
こういった表示が出た状態ではユーザーがびっくりしてしまいますね。

今回は、SUMで#エラーが出る場合の対処法をご紹介します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは基本機能だけでも十分便利ですが、VBAを使うことで格段に使いやすいデータベースを作成可能です。
この記事ではACCESSでのVBAの使い方をご紹介していきます。

集計フィールドでエラー

ACCESSのフォームで集計値を出したい場合に、下記のように#エラーと表示されてしまうことがあります。

この原因は、テーブルやクエリにある値ではなく、フォーム上で計算した値をもとに集計を行っていることです。
以下で詳しく見ていきましょう。

#エラーになる原因

先ほどのフォームをデザインビューで見てみましょう。

下段にある合計欄は

となっており、数量と金額の掛け算をフォーム上で行っています。

さらに上段にある合計金額欄は

としてあり、先ほど計算した合計欄を更にSum関数で集計しています。

このように、フォーム上で集計した値を更にSum関数で合計すると#エラーが出てしまうのです。

解決方法

この問題は、合計の計算をフォーム上で行うのではなく、フォームのレコードソースとなっているクエリ上で行うことで解決できます。

クエリをデザインビューで作成しましょう。

一番右の列に合計を追加します。
計算式は下記の通りです。

:(コロン)の左側にある「合計」がフィールド名で、右側にある計算式が表示する値になります。
クエリのデータシートビューで結果を見てみましょう。

このように、合計が表示されますね。
それでは、フォームのデザインビューに戻ります。

プロパティシートでフォーム全体を選択し、レコードソースを先ほど作成したクエリに変更します。

その上で、合計テキストボックスのコントロールソースを、先ほどクエリで作成した合計に変更します。

こうすることで、フォーム上での計算をなくし、クエリ上で計算した結果をフォームに表示する形に変更できました。
フォームをフォームビューで見てみましょう。

このように合計金額のエラーが解消され、正しく集計されるようになりました。

以上、SUMで#エラーが出る場合の対処法をご紹介しました。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に200以上のACCESSデータベースの開発・修正実績のあるはこにわガジェット(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

フッターバナー

最後までお読みいただき、ありがとうございました。