- ベストアンサー
クロス集計クエリの結果をテーブルにしたい
こんにちは。ACCESS 97、ほぼ初心者です。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1445032 こちら様の質問の、便乗質問です(質問者様とは関係ありません)。 品番,倉庫,数量 4944,F,190 4960,A,25 4960,B,6 4960,C,72 4960,D,20 4960,E,50 4960,F,3 4962,C,26 4962,E,4 4963,C,5 4964,A,4 4964,C,148 4964,E,42 4965,A,2 4965,C,5 4965,E,1 4966,C,4 4966,E,1 こんなデータからテーブルを作成し、クロス集計クエリで 品番 A B C D E F 4944 190 4960 25 6 72 20 50 3 4962 26 4 4963 5 4964 4 148 42 4965 2 5 1 4966 4 1 という結果を出し、上の質問の方法でテーブル作成すると、元データと同じテーブルが作成されます。 A、B、C、D、E、Fを列見出しにしたテーブルを作成したいのですが、教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
<クロス集計クエリのテーブル化> ファイル 外部データの取り込み インポート クエリ (クエリ名)在庫のクロス集計 オプション クエリのインポート テーブルとしてインポート OK でできましたが、やってみてください。 普通のクエリのテーブル作成クエリではできなかった。 (断定にはやや不安あり) http://www20.big.or.jp/~o-shin/bbs/bender/sql/pslg5447.html なおクエリをコピーして、テーブルに貼り付けるのもできた・
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
下記結果では、何か質問者にとって、不満足な点があるのだろうと思いますが、何かがわかりません. 補足してみてください。 ----- 下記のようにやってみました。 質問のデータをエクセルのシートにコピー データ-区切り位置-カンマで項目ごとに分離 アクセスからインポート 結果はテーブルに ID 品番 倉庫 数量 1 4944 F 190 2 4960 A 25 3 4960 B 6 4 4960 C 72 5 4960 D 20 6 4960 E 50 7 4960 F 3 8 4962 C 26 9 4962 E 4 10 4963 C 5 11 4964 A 4 12 4964 C 148 13 4964 E 42 14 4965 A 2 15 4965 C 5 16 4965 E 1 17 4966 C 4 18 4966 E 1 ができました。 ーーーー以上は前置き、質問と直接関係なし。 テーブル名 在庫、とする。 クエリ-新規作成-クロスクエリウイザード-OK テーブル 在庫 を指定-次へ 行見出し 品番 を指定-次へ 列見出し 倉庫 集計する値 数量 合計 次へ クエリ名指定 結果 品番 合計 数量 A B C D E F 4944 190 190 4960 176 25 6 72 20 50 3 4962 30 26 4 4963 5 5 4964 194 4 148 42 4965 8 2 5 1 4966 5 4 1 以上はクエリですが、テーブル化したいということでしょうか。 >A、B、C、D、E、Fを列見出しにしたテーブルを作成したいのですが、教えてください。 が良くわかりません。
お礼
ありがとうございます。
補足
言葉が足りなくて、ごめんなさい。 > 以上はクエリですが、テーブル化したいということでしょうか。 そうです。実は正直言うとテーブルとクエリの違いが分かってないんです。 最終的には、たとえば品番4944 に対して A B C D E F 4944 0% 0% 0% 0% 0% 100% という比率の表を作りたいのですが、クエリ結果から作れなくて(スキルがなくて)。 テーブル化してしまえば出来そうだ、と思ったので、こういう質問になりました。
- DexMachina
- ベストアンサー率73% (1287/1744)
テーブル作成クエリで対処するのでしたら、新規クエリを作成して、 作成済のクロス集計クエリを「テーブルの表示」ダイアログで指定し、 全てのフィールドをクリック&ドラッグで追加した後、 それをテーブル作成クエリとして保存・実行すれば、 とりあえずその場では目的のテーブルが作成できます。 但し、上記クエリの作成時のフィールド(=クロス集計クエリの列見出し)がABCDEFだったとして、 次回にそのクエリを実行したとき、これ以外の列見出しが生じたり、 列見出しが不足したりするような場合、下記のような不都合が生じます: ・クロス集計時の列見出しがBCDEFになる場合 →「A」が見つからない旨のエラーが発生 ・クロス集計時の列見出しがABCDEFGになる場合 →作成されたテーブルに「G」の情報が出力されない ですので、テーブル作成で対処されるよりも、 一旦csvファイルかxlsファイルとして出力後、それを再度Accessにインポート、 という形にされてはいかがでしょうか。 ※クエリとして保存するのではなく、SQL文で対処するようにすれば、毎回列見出しが変わっても 対応できるのかもしれませんが、私にはまだそこまでの知識はありませんので・・・(汗)
お礼
ありがとうございました。
補足
そうなんですよね。。 EXCEL に出力してからいじるなら、PIVOT とかでどうとでもできるんですが。。 最近データが膨大になってきて、ACCESS に移行するため、四苦八苦しています。
お礼
ありがとうございました!! 出来ました!!!