• ベストアンサー

顧客ごとの情報を1レコードにする

お助けください。 Win2K、Access2000です。 テーブルAに顧客情報(氏名、生年月日等) テーブルBに購入した商品(1商品1レコード) このAとBにはともに顧客固有のIDがついています。 それをKeyにして顧客の情報と購入商品(複数)を1レコードにしたいのです。 VBAは少しわかります。(でも素人同様です。) レコードセットとかDAOとかでしょうか? 優しくお願いします。

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

  • ベストアンサー
  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.2

> ********* テーブルC(作りたいテーブル)** > 顧客ID 氏   名   商品1   商品2  商品3 > 0001  あいう えお  テレビ   ビデオ > 0002  かきく けこ  ステレオ  冷蔵庫  洗濯機 同じ顧客が、たくさんの商品を購入した場合、どんどんフィールドが 増えていきますよね? 上限とかはないのでしょうか?? ひとつのフィールドに、 テレビ,ビデオ ステレオ,冷蔵庫,洗濯機 のように表示してもいいのなら、以下のページが参考になると思いますが。。 DJoin 関数 - リスト文字列を取得する方法 http://www.f3.dion.ne.jp/~element/msaccess/AcTipsVbaDJoin.html

参考URL:
http://www.f3.dion.ne.jp/~element/msaccess/AcTipsVbaDJoin.html
noname#12495
質問者

お礼

ありがとうございました。 望み通りの動きでした。感謝します。

その他の回答 (2)

  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.3

結論からいうと、VBAを使うしかないと思います。 しかし、VBAに関して素人同然ということですので、 難しいのではないでしょうか。 どうしても、やらなければならないのでしたら、VBA、SQL、DAO(又はADO) を勉強するところから始める必要があるでしょう。 その手間と実現できたときのメリットを比べて決めて下さい。 何に使うのかはわかりませんが、 大抵の場合は、縦方向に並べても問題はおきないと思いますよ。 例(印刷する場合) 顧客ID 氏   名   商品 0001  あいう えお             テレビ             ビデオ            (2種類) 0002  かきく けこ             ステレオ             冷蔵庫             洗濯機            (3種類)

noname#12495
質問者

お礼

仕事上、どうしてもやらなくてはいけなかったのです。 ご回答、ありがとうございました。

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

> それをKeyにして顧客の情報と購入商品(複数)を1レコードにしたいのです。 顧客番号 購入商品1 購入商品2   :    のような構成のデータにしたいということですか?? 実際に具体例を出していただいたほうが回答しやすいですけど。。

noname#12495
質問者

補足

********** テーブルA *********  顧客ID   氏  名   生年月日  ・・・・ 0001   あいう えお  S35.01.01 ・・・・ 0002   かきく けこ  S40.10.10 ・・・・ ********** テーブルB ********* 顧客ID  商品名 0001   テレビ 0001   ビデオ 0002   ステレオ 0002   冷蔵庫 0002   洗濯機 上記テーブルA、Bを ********* テーブルC(作りたいテーブル)** 顧客ID 氏   名   商品1   商品2  商品3 0001  あいう えお  テレビ   ビデオ 0002  かきく けこ  ステレオ  冷蔵庫  洗濯機 こんな感じにしたいのですが、お判りいただけましたでしょうか? よろしくお願いします。

関連するQ&A

専門家に質問してみよう