質問: accessでレコードを別テーブルへコピーするには accessのvbaを教えてください。 「名簿1」というテーブルがあり、そのテーブルの1つのレコードを「名簿2」という別テーブルに移動させたいです。 「名簿検索」フォームがあり、「名簿1」のデータを検索して表示させることができます。 その表示させたある特定のレコードを、「移動」というボタンを押すと「名簿2」へ移動させるような作りにしたいです。 「名簿1」と「名簿2」は全く同じ構造のテーブルです。 初心者のため、一番簡単な方法でやりたいです。 レコードを「名簿2」へコピーし、その後「名簿1」のレコードを削除しようと思ったのですが、なかなかうまくできません。 insert into を使ってみたのですが、テーブルのデータ全てがコピーされてしまいます。 access2010を使用しています。 よろしくお願いいたします。
回答: 名簿1と名簿2のフィールドが 氏名、住所、tel だったとします。 名簿検索フォームに配置したテキストボックスが、tx_氏名、tx_住所、tx_telだとして、 dim db as database dim rs as recordset set db = currentdb set rs = db.openrecordset("名簿2", dbopendynaset) rs.addnew rs!氏名 = me.tx_氏名 ←名簿2へコピー rs!住所 = me.tx_住所 rs!tel = me.tx_tel rs.update docmd.setwarnings false ← システムメッセージを非表示 docmd.runcommand accmddeleterecord ←名簿1(名簿検索フォーム)のレコード削除 docmd.setwarnings true ← システムメッセージを表示 rs.close: set rs = nothing db.close: set db = nothing