Microsoft Access経由でリンクしている15個程度のデータへ、エクセルファイルからデータをコピー&ペーストしています。


作業は単純作業で、エクセルファイルの2行目から下をアクセス経由で開いたデータベースへコピー&ペーストしています。

この作業を自動化したいと思いますが、Access or Excel VBAまたは両方でできますか?
できるならば(もし両方できるならば両方)、「だいたいこんな作業でできるよ」と簡単な指針を示して下さい。

またはbat(適当でない名称かもしれませんが・・・)などのプログラムで作るべきでしょうか?

15程度のエクセルファイルは同一フォルダにおいてあり、15程度のデータベースファイルも別の同一フォルダ内にあります。また、エクセルファイルはcsv形式にしても良いと考えています。

よろしくお力添えをお願い致します。

回答の条件
  • 1人2回まで
  • 登録:2009/01/14 10:08:57
  • 終了:2009/01/17 20:52:17

ベストアンサー

id:frkw2004 No.1

ふるるP回答回数192ベストアンサー獲得回数212009/01/14 11:25:52

ポイント60pt

データベースファイル、とは何を指していますか?

データベースには、テーブルがあり、実際のデータはテーブルに格納されます。

アクセス経由と書かれていますが、アクセスのデータベース内にテーブルが15程度あり、それぞれのテーブルに、エクセルのシート上のデータを格納したいということになりませんか?

エクセルファイルまたはCSVファイルでもいいですが、複数あるのであれば、私ならアクセスのVBAで処理します。

方法もいろいろあります。

アクセス上でエクセルファイルへのリンクテーブルを作って、SQLでデータを取り込むとか、

エクセルファイルを開いて、各行のデータを使ってInsertのSQLを作って必要行数文実行させるとか、

TransferSpreadsheetメソッドで一旦ワークテーブル上に取り込んでから、格納したいテーブルへデータをセットするクエリを実行するとか。

できるかできないか、ということであれば、できます。アクセスでもエクセルでもどちらでも出来ます。VBAでその手のことはたいてい可能です。

id:ReoReo7

>アクセス経由と書かれていますが、アクセスのデータベース内にテーブルが15程度あり、それぞれのテーブルに、エクセルのシート上のデータを格納したいということになりませんか?

そのとおりです。

>エクセルファイルを開いて、各行のデータを使ってInsertのSQLを作って必要行数文実行させるとか

ありがとうございます。この方法が良さそうに思います。



次質問にて、そのコードについて伺おうと思います。

2009/01/14 11:30:07

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません