• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access2003 異なるテーブルを1つのテーブルにくっつける)

Access2003で異なるテーブルを1つにくっつける方法は?

このQ&Aのポイント
  • Access2003で異なるテーブル同士を結合する方法について質問させていただきます。
  • 具体的には、異なるフィールドとキーを持つテーブルAとテーブルBを横並びにくっつけることができるのかを知りたいです。
  • インターネットで調べましたが、解決策が見つからないため、こちらで質問させていただきました。お助けいただければ幸いです。

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

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.2

テーブルCを作る必要があると思います。 テーブルCを作る時、フィールド名に同じ「得意先」が使えないので以下のような構成にして事前に作成しておきます。 テーブルC: 「客先」「売上高」「仕入先」「仕入高」 テーブルA/B/C の名前は、T_A/T_B/T_C と仮定します。 テーブルCを作成するボタンをクリックした時、以下の処理を行います。 (ADOでの例となります) Private Sub ボタン_Click()   Dim rsA As New ADODB.Recordset   Dim rsB As New ADODB.Recordset   Dim rsC As New ADODB.Recordset   Dim bNoneAB As Boolean   CurrentProject.Connection.Execute "DELETE * FROM T_C;"   rsA.Open "T_A", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly   rsB.Open "T_B", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly   rsC.Open "T_C", CurrentProject.Connection, adOpenForwardOnly, adLockOptimistic   Do While (1)     bNoneAB = True     If (Not rsA.EOF) Then       bNoneAB = False       rsC.AddNew       rsC("客先") = rsA("得意先")       rsC("売上高") = rsA("売上高")       rsA.MoveNext     End If     If (Not rsB.EOF) Then       If (bNoneAB = True) Then         rsC.AddNew       End If       bNoneAB = False       rsC("仕入先") = rsB("得意先")       rsC("仕入高") = rsB("仕入高")       rsB.MoveNext     End If     If (bNoneAB = True) Then       Exit Do     End If     rsC.Update   Loop   rsA.Close   rsB.Close   rsC.Close End Sub ※必要なところしか埋めていないので、フィールドの既定値は適宜設定してください。

osaka-aq
質問者

お礼

ありがとうございます!! 完璧です!!!望んでいた結果になりました!! 本当に有り難う御座いますm(__)m みなさんに負けぬよう、これからも頑張っていきます。

その他の回答 (1)

  • goo39
  • ベストアンサー率36% (13/36)
回答No.1

テーブルAに仕入高のフィールドを作り テーブルBを追加クエリでテーブルAに追加するのはどうでしょうか? イメージとしては  得意先 売上高 仕入高  あああ   100  いいい   200  ううう         300  えええ        400  おおお        500

osaka-aq
質問者

お礼

早速のご回答有り難う御座います。 どうしても横並びにする必要があります。 結果(クエリ?)をもとに  得意先  売上高  得意先  仕入高  あああ  100    ううう  300  いいい  200    えええ  400            おおお  500 のレポートを作成したいので、どうしても横並び、かつ1行目から空白無くリスト表示させる必要があります。。。(><)

関連するQ&A