• 締切済み

Accessでテーブルからテーブルにデータをコピーしたい

こんにちは。loooserと申します。 Accessでアプリケーションを作ろうとしているのですが、テーブルからテーブルにデータをコピーする方法が分かりません。 テーブル1には name price comment というフィールドがあり、 テーブル1'には no name price comment flag という5つのフィールドがあるとして、 テーブル1の3つのフィールドをテーブル2に移動したいと考えています。 他にもテーブルが複数あり、フィールド数は固定でないのです。 列数を取得してループするという感じだと思うのですが、全く知識がなく、お知恵をお借りできればと思っております。参考URLなどでも結構ですので、どうかお願いします。

みんなの回答

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

>テーブルが不定期で増え・・・それを一括で処理できないものか 不定期で増えるものに対して一括でというのは無理なのではないでしょうか。不定期で増えるテーブルの把握はどのように行うのですか? >既に移行先テーブル自体はあり中の列数が違う。またテーブル数は変動という条件 既にある移行先テーブルの列数の差は問題ありません。 しかしテーブル数は変動という意味がイマイチ判りません。移行先のテーブルで同じフィールド内容のテーブルが複数あるという事なのでしょうか? 追加クエリを作るか下記のSQLでテーブル1からテーブル2へ3つのフィールドのレコードを追加できます。 INSERT INTO テーブル2 ( name, price, comment ) SELECT テーブル1.name, テーブル1.price, テーブル1.comment FROM テーブル1; 複数あるテーブルに追加していく簡単な方法として移行先の各テーブルの追加クエリを作りマクロに設定しておきマクロを実行して一括に各追加クエリを処理させる。新たに増えた移行先テーブルはその都度追加クエリを作りそのマクロに追加設定していく。 質問の内容と違うようでしたらゴメンなさい。

  • PCFREAK
  • ベストアンサー率51% (417/805)
回答No.1

VBAで構築するのも手ですが、「追加クエリー」を使えば簡単に出来ます。 下記URLを参考にして下さい。(ACCESS97での例ですが、他のバージョンでもほぼ同じです。)

参考URL:
http://www.mahoutsukaino.com/ac/ac97/basic/a_query3.htm
loooser
質問者

お礼

こんにちは。 ありがとうございます。追加クエリという方法があるのですね。 しかし、テーブルが不定期で増え、またそれを一括で処理できないものかと思いましたので、出来ませんでした。これだと、毎回追加クエリを発行しないといけないですよね? 「元のテーブルの、最前列と最後列に1列ずつ列が追加されるようなテーブルで、既に移行先テーブル自体はあり、中の列数が違う。また、テーブル数は変動」という条件なのです。 移行先テーブルを新たに作るというようなほうがいいのでしょうか?

関連するQ&A