• ベストアンサー

accessでのレコードの複製について

出荷管理データベースを作りました。 1出荷先ごとに「個口」項目を作り、そこに出荷個数を入力するようにしたのですが、 個口項目の数だけ別テーブルに出荷先データを複製する方法を教えてください。 出荷先 個口 ○○様  1 ○×様  2 △△様  3 ↓別テーブルに出力 出荷先 ○○様 ○×様 ○×様 △△様 △△様 △△様

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

  • ベストアンサー
回答No.1

vba使えばできるけど・・・ (ストアドプロシージャでできるかもしれないけど、作り方知らないので) 元テーブルがテーブル1で、出力テーブルがテーブル2の場合です。 参照設定で、Microsoft DAO *.* Object Libraryが必要です。 Sub test() Dim rs As DAO.Recordset Dim i As Integer 'DoCmd.RunSQL "create table テーブル2([出荷先] text)" '必要ならテーブル2作成 'DoCmd.RunSQL "delete * from テーブル2" '必要ならテーブル2の既存のデータ削除 Set rs = CurrentDb.OpenRecordset("select [出荷先],[個口] from テーブル1") rs.MoveFirst Do While Not rs.EOF For i = 1 To rs("個口") DoCmd.SetWarnings False DoCmd.RunSQL "insert into テーブル2([出荷先]) values(""" & rs("出荷先") & """)" DoCmd.SetWarnings True Next rs.MoveNext Loop rs.Close Set rs = Nothing End Sub

lu_ka
質問者

お礼

ありがとうございます! む、難しいですね… VBA勉強中なので、ご回答を参考に頑張ってみたいと思います!

関連するQ&A