- ベストアンサー
アクセスのクエリ フィールドの合計
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
まあ、クエリだけであれば、 合計:Nz([A])+Nz([B])+Nz([C]) で解決する訳ですが、これでOKと考えるのは問題ありです。 まぜなら、<ヌル値を発生させない>が基本だからです。 置換という手もありますが、入力段階で対策を取ったがいいです。 その上で、バグ対策としてNz関数を使うのは構わないと思います。
その他の回答 (2)
- trajaa
- ベストアンサー率22% (2662/11921)
フィールドCで言えば、単に[C]とフィールドを指定すると、NULL値の場合に演算値が不正になりますので IIf(IsNull([C]),0,[C]) と言った形で、NULL値の回避をする必要がありそうです。 後は、事前にNULL値不可属性を付けるか デフォルトで0にしておくとか方法は有りそうですが
- tkun62
- ベストアンサー率23% (37/159)
その様になると思います。 問題を回避するためにはフィールドに空白が入らないようにしておくか クエリを実行する前に空白をゼロで置換えておく必要があります。
補足
早速有難う御座います。 そうですか。。これを回避する式があると 助かるのですが。。
関連するQ&A
- access 抽出したフィールドの合計
access2010です。 現在、以下のようなクエリがあります。(数値のところがずれて表示されているかもしれませんが、それぞれフィールド毎の値です) [ID] [項目A] [項目B] [項目C] [項目D] [合計;[項目A]+[項目B]+[項目C]+[項目D]] 1 50 100 100 50 このままデータシートビューにすると[合計]欄は300になります。 表示をAとBとCのみにした場合、合計が250になればいいのですが、300のままです。 AとB、BとCなどいろいろ組み合わせを変えて表示したいのですが、全組み合わせ分のクエリーを作らずに、選択した分のフィールドのみの合計を出す方法はありませんでしょうか。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- アクセスのクエリでパラメータを表示させない方法は?
超初心者の質問ですみません。。 アクセスのクエリで、ある数字の全体に対して占める割合を求めるため、以下のような式をいれています。 フィールドC: [フィールドA]/[フィールドB] このクエリを開いたときに毎回パラメータが表示されるのですが、これを表示させないためにはどのようにすればよいのでしょうか?OKを2回押せばきちんと計算された値が入ってくるのですが、毎回OKを押さずに開けるようにしたいです。 ちなみに、フィールドAとフィールドBは、あるテーブルに入っている値をクエリ側で 集計 を「合計」に設定して求めた値が入っていて、フィールドA~Cは同じクエリの中にあります。 VBAやSQLはまったく理解できません。 よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- Accessのクエリーで合計を出したい
WinXPでAccess97を使用しています。 数値型のフィールドで、名前が「1」「2」・・・「50」とついてます。これをクエリーで、それぞれのフィールドの値を合計する演算フィールド「合計」を作成したいと思います。 「合計:[1]+[2]+・・・[50]」でもいいのですが、式が長くなります。ForNext文などVBAのループを使ってモジュールに記述して、合計を出す方法はありますか?
- ベストアンサー
- オフィス系ソフト
- アクセスでクエリ実行後の空欄について
こんにちは。 アクセス初心者の者です。 アクセスを用いてクエリを作成しています。 テーブルAとBがあります。 Aの1フィールドと、Bの1フィールドを結合して、 Aの2フィールドと3フィールドを表示させるようなクエリです。 (結合プロパティで、Bの空欄を無視するようにしています。) しかし、結果を表示してみると、Bの1フィールドはちゃんと値が入っているにもかかわらず、 Aの2フィールドと3フィールドの値が挿入されず、 空欄になっているところが「ところどころ」あります。 入ってるところもあれば抜けているところもあり、不思議です。 データ量が多く、エクスポートすると10Mバイト以上あるのですが、そういうのが影響しているのでしょうか。 ちょっと説明しずらく、わかりずらいかもしれませんが、 その際はもっと説明させていただきますので、 どうぞよろしくお願いいたします。
- 締切済み
- その他(データベース)
- Access2003 クロス集計クエリでの合計
☆以下のようなテーブルで、フィールド[ID]~[C]があり、文字および数字のデータが混在しています。 ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ =========================================== (テーブル(1)) [ID] [A] [B] [C] 1 111 英語 10 2 222 英語 20 3 333 数学 30 4 111 国語 40 5 222 数学 50 6 333 国語 60 7 222 国語 70 8 333 英語 80 9 111 数学 90 =========================================== [課題] クロス集計クエリを作成する (1) フィールド[A]を行見出しに設定、 フィールド[B]を列見出しに設定、 フィールド[C]を集計する項目に設定する。 (2) フィールド[C]の値を列ごとに平均を計算し、 行ごとに合計を計算する。 ※ 列と行で、それぞれ集計した値を表示する ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ =========================================== [クロス集計結果] 合計 英語 国語 数学 111 140 10 40 90 222 140 20 70 50 333 170 80 60 30 --------------- 平均 150 36 56 56 =========================================== ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ 上記のようなクロス集計クエリの結果を表示させたいのですが、 どうすればよろしいでしょうか? また、クエリだけでは出来ない場合は、SQLで教えていただければ幸いでございます。 お手数お掛けしますが、何とぞ宜しくお願い致します。
- ベストアンサー
- その他MS Office製品
- アクセス・クエリーでのフィールド内の関数式について
アクセス・クエリー結果の中に"合計"というフィールド(値)があるのですが、そのフィールドを基に隣のフィールドに値がマイナスであれば、反映する式を組みました。 計算結果は、ちゃんと反映されるのですが、結果の形式がどうもテキスト表示になっているみたいです。 数値に置き換えるような式も組んでみたものの、なかなかうまくいかないので、ご質問させていただきました。 よろしくお願いします。
- 締切済み
- その他MS Office製品
- ms access クエリの集計について
こんにちは ms accessのクエリで、文字列として入力されている数字を数値扱いに直してその合計を出そうとしているのですが、特定の値を指定して合計を出そうとすると値がマイナスになってしまいます。 例 式1:sum(val(nz[フィールド名]))=1) フィールドに1とあるレコードを足して合計を出す場合です。値がマイナスになってしまいます。nzは別のクエリ使用時に空欄があるとまずいので入れてあります。 左隣で別のフィールドでグループ化し、ここでは演算を選択しています。
- 締切済み
- Visual Basic
- 【Access】フィールドにつけた別名を同じクエリで抽出に使いたいです
【Access】フィールドにつけた別名を同じクエリで抽出に使いたいです。 Access2003を使っています。 困っている状況は以下のようなもです。 ■テーブル1 ・フィールド1 ■クエリ1 ・フィールドA:フィールド1 ・フィールドB:[フィールドA] 【抽出条件】>=10 このような条件で、クエリを実行すると、 「パラメータの入力 フィールドA」というダイアログが立ち上がってしまいます。 上記載のクエリ1でフィールドAの[]は自然についてしまうのではずせません。 今はもう一つクエリを作る事でこの状況はなんとかしましたが、フィールドに別名をつける毎にクエリを作るとクエリの数が多くなってしまうので困っています。 クエリでフィールドに別名をつけた場合は、そのクエリ上でその別名を使って抽出をかけることはできないのでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
お礼
ご返信遅くなりすみません! 勉強になりました。ありがとうございました。