- ベストアンサー
ACCESSで同じテーブルにインポートするには
ACCESSで、商品番号を検索するためのものをつくりました。 フォームに検索欄を作って番号を入れれば検索できるようにしたのですが、日々ACCESSに入力していくのではなく、日々エクセルから作ったそのACCESSファイルのテーブルに累積するかたちでインポートしたいのですがどうやればいいのでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>日々エクセルから作ったそのACCESSファイルのテーブルに累積するかたちでインポートしたい 1.インポート定義を作って同じテーブルにインポートするマクロを作るかVBを使ってインポートさせるようにする。 2.ExcelのシートをテーブルにリンクしてExcelをテーブルとして使い日々の入力はリンクしたExcelのシートに追加する。そのテーブルを元に検索する。 1の方が良いと思いますが取りあえずインポートするマクロを作ってみてはいかがですか。 マクロでワークシート変換を選びインポートして保存するテーブル名を入れインポートするExcelのファイルをフルパスで指定して作れば簡単に出来ます。 分からないところがあれば補足でも質問でもしていただければ。
その他の回答 (2)
- O_cyan
- ベストアンサー率59% (745/1260)
>インポートする側のエクセルに累積しておいてそれを都度Accessに上書きというかんじになるのでしょうか。 テーブルにExcelのシートをリンクするとそのシート自体をテーブルとして使えるのでそのシートに追加していくだけです。リンクしてもAccess自体にはテーブルはできません。AccessからExcelのシートを使っているだけなので。 Access上にテーブルをExcelからテーブルを作りたければExcelのシートを1度インポートしてテーブルを作っておき追加用としてExcelシートをテーブルにリンクさせておき追加用のシートにデータを入力していきます。追加用Excelシートのデータをテーブルに追加するクエリを作り追加したい時にそのクエリを実行すれば追加用Excelシートのデータをテーブルに追加されていきます。テーブル追加クエリをダブルクリックすればすぐ追加できてしまいます。 Excelシートをテーブルにリンクしてあればテーブル追加クエリの作成も簡単です。
お礼
ありがとうございます!!できました。
EXCELからインポートする機能がありますのでこれを使います。 (多分ご存じでしょうが...) ただ、 1.自動化したいのでその方法を知りたいのか、 2.既にデータが入っているテーブルにインポートしたときに上書きされてしまうのかを知りたい。 が質問からは判断できません。 2.ならば実際にやってみれば判ります。
お礼
ご回答ありがとうございます。 2です。やろうとすると上書きされてしまうのです。上書きされずに同じテーブルにインポートしていくにはどうしたらいいのでしょうか。
補足
ありがとうございます!インポートする側のエクセルに累積しておいてそれを都度Accessに上書きというかんじになるのでしょうか。