質問
Sum関数の使いかたについて(ACCESS)
- 投稿日時:2008/01/26 23:00

レポート上に商品A、商品B、商品Cというテキストボックスがあってそれぞれのプロパティのコントロールボックスには以下の設定がしてあります。
=DSum("[商品A]","[抽出クエリ]")
=DSum("[商品B]","[抽出クエリ]")
=DSum("[商品C]","[抽出クエリ]")
商品A~Cそれぞれの合計値は正常に表示されるのですが、商品A~Cの合計値を別に設けたテキストボックス(総計)に表示させたいのですが、何も表示されません。
総計のコントロールボックスには以下の記述をしました。
=Sum([商品A]+[商品B]+[商品C])
Web検索で関数の使い方等を調べましたが、原因が分かりません。
どなたか、サポートをお願いいたします。
回答 (6件)
- 最新から表示
- 回答順に表示
- ベストアンサーのみ表示
No.6ベストアンサー20pt
- 回答日時:2008/02/02 21:36
原因はNullでしたか~
値がNullの時値を変換する関数として
Nz()というのがありますので
DSumの関数自体をNz(DSum("[商品A]","抽出クエリ"),0)とすれば
Nullの場合でも ゼロ が返されるので 今度はうまく行くと思いますよ。
この回答へのお礼
nackfiveさん。
miffyです。
Nz関数を使ったら、今度は正常に表示されました。
ネットでSum NZでネット検索したら、使用方法が出てきました。
また、一つ関数を覚えることができました。
スペシャル感謝!!....._〆(・∀・*)ノ
No.5
- 回答日時:2008/02/01 08:46
そうするとですね~
まず 最初に戻りますがSUM()関数は レポートフッタかヘッダでしか
使えなかったはずです。
そもそもSUMはレポートの元になっているソースに対しての
SUMなので今回の[抽出クエリ]とレポートのレコードソースは同じなのでしょうか?
それとDSUMで表示される3項目の中にNullが無いですか?
もしあると商品A+商品B+商品Cとしても Nullになってしまいます
ご確認下さい。
この回答へのお礼
nackfiveさん。
miffyです。
ご丁寧に有難うございます。
DSUMで表示されてる3項目の中にNullがありました。
試しにその項目のフィールドに"1"を入れてレポートを実行させたら、正常の値が表示されました。
Nullの場合は、何かプロパティで設定をするのでしょうか?
No.4
- 回答日時:2008/01/30 08:11
#3です
不思議ですね~ 私のやり方でも#1の方のやり方でも
本来正常に表示されるはずですので 他に原因があるとしか
思えません。
試しに、コントロールソースに=1としてプレビューしてみて
1が表示されますか?
あと 総計のテキストボックスはどこのセクションに配置していますか?
この回答へのお礼
nackfiveさん。
お返事遅れて申し訳ありません。
総計のコントロールソースに=1としたら、正常に表示されました。
総計のテキストボックスは、詳細のセクションに置いてます。
=[商品A]+[商品B]+[商品C]に戻したら、何も表示されません。
どつぼにはまってます。
No.3
- 回答日時:2008/01/29 16:47
確実な方法は 総計のテキストボックスに
DSumの式が記述されているコントロール名が
[商品A],[商品B],[商品C]だと想定した場合
=[商品A]+[商品B]+[商品C]
とすれば 表示されるはずです。
もし 表示されないとすれば 総計の
表示されるセクションが表示されない状態に
なっている可能性があります。
若しくは 総計の可視がいいえになっているとか。
この回答へのお礼
nackfiveさん。
御回答有難うございます。
=[商品A]+[商品B]+[商品C]で記述しても、結果は同じでした。
総計のテキストボックスの可視は”はい”になっていますし、
プロパティをいろいろ見てみても、セクションが表示されない原因はないようです。
No.2
- 回答日時:2008/01/29 07:10
#1です。投稿前に試験はしていました。改めて試すと
=DSum("[商品A]","[抽出クエリ]")+DSum("[商品B]","[抽出クエリ]")+DSum("[商品C]","[抽出クエリ]")
=Sum([商品A]+[商品B]+[商品C])
のどちらも上手く行きます。こちらのAccessのバージョンは2000です。
あと若干気になったのは「商品A」. . . .がフィールド名とコントロール名の両方に使われていることです。こちらでは問題ありませんがバージョンによってはバッティングするかもしれません。
別の策としては抽出クエリに新しいフィールド
[商品A]+[商品B]+[商品C] AS T
を作成し
=DSum("[T]","[抽出クエリ]")
としてどうでしょうか?「T」に別段意味はなくTotalでも合計でも何でも良いでしょう。
- 質問者のみ
- この回答にお礼をつける
No.1
- 回答日時:2008/01/28 06:48
=DSum("[商品A]","[抽出クエリ]")+DSum("[商品B]","[抽出クエリ]")+DSum("[商品C]","[抽出クエリ]")
では拙いんでしょうか?
この回答へのお礼
fuuten_no_nekoさん。
お返事遅れて申し訳ありません。
=DSum("[商品A]","[抽出クエリ]")+DSum("[商品B]","[抽出クエリ]")+DSum("[商品C]","[抽出クエリ]")
以上のようにプロパティ→コントロールソースを記述し直しましたが、結果は同じでした。
どうしてでしょう?
このQ&Aを見た人はこんなQ&Aも見ています
- 4csvファイルをアクセスにインポート
- 5AccessのRefresh・Requery・Repaintの違い
- 6Accessでテーブルのデータを検索してフォームに表示させる方法を教えてください
- 7クエリで合計を出したい。。
- 8ACCESS フォームからサブフォームのデータを更新・入力したい
- 9AccessのマクロでCSVファイルをインポートする
- 10アクセスのDsum関数の使い方
- 11Accessのクエリで、Left関数を使用して、7桁の数値を抜き出す方
- 12抽出条件でデータ型が一致しません。のエラーメッセージが出る
- 13テキストボックスにクエリ結果を表示させたい
- 14アクセエスのレコードの更新をVBAでするには?
- 15アクセスのSUM関数について
- 16Access 別テーブルにある値を抽出条件にしたい
- 17Accessのフォーム上にレコード数とレコード番号の表示
- 18EXCELの日付データを文字列に変換したい
- 19Accessでグローバル変数を宣言して定数を定義したい
- 20ACCESSで、フォームのレコードごとに背景色変更
注目の記事
知っておこう!犬を飼う上での心構え
新しい家族と一緒に暮らす上で、知っておくと役に立つ情報をご紹介
このQ&Aを見た人がよく見るQ&A
このカテゴリで人気のQ&Aランキング
- 4オラクル(PL/SQL)のエラー
- 5Accessで画像を整理することもでき...
- 6複数テーブルをひとつのテーブルに...
- 7〔VBA・マクロ〕EXCELからACCESS...
- 8Oracleのテーブルサイズ
- 9ACCESS フォームをそのまま印刷につ...
- 10Oracleでオブジェクト権限を調べる...
- 11SQL文のwhere条件文で使う <> の意...
- 12DAOとADOの違いについて
- 13iPadからPCへのデータ転送について
- 14ピボットテーブル作成時の空白セル...
- 15TPSとは・・・
- 16ノーツのメール受信時の相手の名前...
- 17SQL エラー コードの一覧 について...
- 18エクセルの指数近似曲線の式から値...
- 19CSV形式のファイルを読み込んでテー...
- 20Accessでテーブルからテーブルにデ...






