• ベストアンサー

Access クロス集計結果の空欄にゼロを入れたい

Accessのクロス集計クエリの実行結果がNullの欄に 0(ゼロ)が入るようにしたいのですが、どうすればよいでしょうか? よろしくお願いします。

noname#2528
noname#2528

質問者が選んだベストアンサー

  • ベストアンサー
  • oka123
  • ベストアンサー率31% (69/219)
回答No.3

こんにちわ 再回答です [1]: IIf(IsNull([1]),0,[1]) ですが もしも項目[1]  (クロス集計クエリーで値が1の時での集計値項目) がヌルなら 0 を ヌルでなければそのまま項目[1]を移す という意味です(ご存知かもしれませんが念のため) 最質問の件ですが 別途「更新クエリー」を作成して is null なら 0 にするという更新クエリーを つくることによっても 0にすることができます しかし更新クエリーはテーブルに対してしか 効果がありません クロス集計の結果はクエリーですから それ自体に対しては直接に更新クエリーが 作れないはずです したがって、集計クエリーをインプットにして アウトプツト側へテーブルを指定することで (2ツ目のクエリー、すなわちテーブル作成クエリー) 集計の結果をクエリーでなくてテーブルとして 保存できるので、そのテーブルに対して 更新クエリーを働かせることになります 必要なクエリーとしては3ツです ・クロス集計クエリー(貴君の作成したもの) ・テーブル作成クエリー ・更新クエリー それぞれのクエリー(種類)の指定は フエリー作成のところの 「クエリー」のところで種別指定ができます (デフォルトは選択クエリー)

その他の回答 (2)

  • nishishi
  • ベストアンサー率39% (17/43)
回答No.2

TRANSFORM IIf(IsNull([ID]),0,Count([ID])) AS IDのカウント SELECT テーブル1.フィールド1 FROM テーブル1 GROUP BY テーブル1.ID, テーブル1.フィールド1 PIVOT テーブル1.フィールド2; 私が適当に作ったテーブルのクロス集計クエリです。この方法でいいのでは ないでしょうか、実際のテーブルにあったフィールド名にする必要がありま すが...

  • oka123
  • ベストアンサー率31% (69/219)
回答No.1

こんにちわ いろんな意味で完全ではないのですが 一例としてクロス集計クエリをつくり その結果 列方向に [1] [2] [3] ........ という項目名ができたとします のクエリーの次に新作の選択クエリーをつくり フイールドのところを [1]: IIf(IsNull([1]),0,[1]) というようにすれば 0が入ります 別の方法としてはクロス集計クエリの結果を テーブルとすれば 次の段階で「更新クエリー」を作成して nullを0にできます

noname#2528
質問者

お礼

oka123さん、回答ありがとうございました。 お礼が大変遅くなりまして、誠に申し訳ありません。 初心者のため、なかなか理解できなくて苦労しております。 ひとつお聞きしたいのですが、 「クロス集計クエリの結果をテーブルにする」とは、どのようにするのでしょうか。 よろしくお願いします。

関連するQ&A

  • アクセス クロス集計結果について

    クロス集計クエリを使っています、Offices Linkボタンを使った方法でクロス集計結果と同じデザインでEXCELに出せるのですが、VBAを使い、EXCELのファイル名を指定した方法で出す事は可能でしょうか?ご教授下さい。アクセス2003使用

  • accessでクロス集計した結果を摘出する方法

    access2007を使っています。 ロータスアプローチからの乗り換えなのでかなり使い方が違い戸惑っています。 クエリよりクロス集計をし、その結果を他のクエリに反映させたいのですが、方法が判りません。 また、クロス集計以外で似たようなデータ摘出方法があれば教えてください。

  • Accessのクエリをクロス集計ウィザードでの質問です。

    Accessのクエリでクロス集計クエリウィザードを使っているといつも、「Nullの使い方が不正です」というエラーメッセージが表示されてしまいます。 こういった場合、どういうところをチェックすればよいのでしょうか?さらにどのような設定にすればよいのでしょうか?教えてください!!お願いします。m(__)m(>_<)

  • ACCESSのクロス集計クエリについて

    ACCESS2000のクロス集計クエリで超初歩的な質問なのですが、、 こんなテーブルがあります。 メーカー  商品名 A社    テレビ B社    テレビ A社    ラジオ A社    テレビ これをACCESSのクロス集計クエリでこんな感じにしたいです。 メーカー  商品名   集計 A社    テレビ   2 A社    ラジオ   1 B社    テレビ   1 エクセルでは、行見出しに「メーカー」と「商品名」を入れて値に「メーカー」か「商品名」どちらかを入れれば希望通りの結果になるのですが、ACCESSのクロス集計では、列見出しに必ず入れないとエラーが出るようです。入れなくても良い方法かもっといい方法がありましたらご教授ください。   

  • アクセス クロス集計結果の列を一部まとめたい

    MSアクセスのクロス集計クエリで質問です。 ある予算種別ごとに、月ごとにクロス集計を行っています。 添付画像のように3月以前のデータ(黄色部分)を集約して表示したいと考えています。 クエリプロパティの列見出しで、"2013/04","2013/05"・・・・と指定して、 データの無い月も表示できるようにしましたが、2013/03以前のデータを集約したいと考えています。 よろしくお願いいたします。

  • クロス集計 エクセル

    アクセスにはクエリにクロス集計がありますが エクセルにもクロス集計と言う機能があるのでしょうか? エクセル2010を持っています。 ピボットテーブルの事を クロス集計と呼ぶのでしょうか?

  • Accessのクロス集計

    Acceessでクロス集計クエリを元にフォームをつくり、コンボボックスで選択した商品だけを表示するにはどうしたらよいですか。 選択クエリを元にしたものはWhere条件式を使い抽出できたのですが、 クロス集計のものだと出来ません。 宜しくお願い致します。  

  • Accessのクロス集計について

    お願いします アクセスで次のようなアンケートCSVをインポートして集計しています。質問1・2に入力されるのは選択肢番号です <アンケート結果テーブル> 名前   回答者 質問1  ========================== 20080710 Aさん   1   20080710 Bさん   2    20080710 Cさん   5    上記をクロス集計を行い日別の集計を行っております。 <クロス集計> 日付   1 2 5 =========================== 20080710 1 1 1  上記の結果を回答がなかった選択番号は下記のように0を表示させたいのですがどうすればよろしいでしょうか? 日付   1 2 3 4 5 =========================== 20080710 1 1 0 0 1 

  • クロス集計クエリの結果を一時テーブルに保存する 

    タイトルのような操作を求め下記のようなやり方を発見したのですが、なぜこのような2種類のクエリを作成しなければならないのかがわかりません。 2つのクエリの意味・役割をご存知の方がいらっしゃったら教えて下さい。 宜しくお願いします。 Q あるテーブルからクロス集計クエリを作成し、そのままそのクエリをテーブル作成クエリにしたところ、クロス集計が解除されてしまいます。クロス集計の結果をテーブルに保存することはできないのでしょうか A クロス集計クエリを作成して、そのままそのクエリをテーブル作成クエリにすることはできないようです。 その場合は、クエリを2つ作成し2段階でテーブルを作成するようにします。 1つめのクエリではテーブルなどを基にしてクロス集計を行います。 2つめのクエリでは1つめのクエリを「テーブルの表示」一覧から「クエリ」タブに切り替えて選択してテーブル作成クエリとします。 参照:http://www.nbcom.co.jp/PC-Support/FAQ/acc/ht/acc092004ht001.shtml

  • Access 2003、2007 なぜクロス集計クエリだけクエリパラメータを設定しないといけないのか?

    Accessで、なぜクロス集計クエリだけクエリパラメータを設定しないといけないのでしょうか? 普通の選択クエリなどでパラメータクエリを作る時は抽出条件に[ ]を記入するだけで作成できますが、クロス集計クエリでパラメータクエリを作ろうとすれば、クエリパラメータでダイアログボックスの文字列とデータ型を指定しなければいけません。 これはなぜなのでしょうか?

専門家に質問してみよう