- ベストアンサー
ACCESSでのインポート処理の自動化
ACCESS2002を使用して、CSVデータをもとにリストを作成するMDBを作成しました。 このCSVデータは不定期に更新され、更新するごとに新しいファイル名がついて準備されます。 今、マクロを使ってインポートの設定をしようと思ったんですが、ファイル名をきっちり指定しないとできないので、今回のように、そのつど、ファイル名が変わる場合はどのように設定をしていいのかわかりません。 私の希望としては、該当のフォルダを開くとこまでをマクロか何かでして、ファイルの選択は利用者にしてもらって、その後は自動的にインポート定義に基づいてインポートされるようにしたいんです。 こういうことは簡単にできないものでしょうか? VBとかもあまり使ったことがないので、マクロとかで指定できればそのほうが助かります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
内容が変わらないのであれば、 マクロのテキスト変換の区切り記号付きインポートで ファイル名の欄に =Forms![フォーム名]![テキストボックス名] としてフォームのテキストボックスの入力値を指定する。 ファイルのパスが変わらない場合は ="C:\パス\" & Forms![フォーム名]![テキストボックス名] でファイル名のみ入力でも可
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
エクセルでは Sub test01() Filename = Application.GetOpenFilename(filefilter:="テキストファイル(*.txt),*txt") MsgBox Filename End Sub を使えます。ACCESSでは使えません。そこでエクセルが使える場合は http://www2.tokai.or.jp/mother/newhtm2/acvba/av02/av005.htm をご参照下さい。
お礼
今回はACCESSを利用しています。 EXCELで今回のようなケースに直面した時、また参考とさせていただきます。 ありがとうございました。
- NorthMole
- ベストアンサー率24% (20/82)
ファイル名を取得するには、VBAを利用して、コモンダイアログを使用する方法になると思います。 ソースはそれなりの行数がありますので、 「ACCESS コモンダイアログ」 で検索してください。 VBAが無理であれば、#1mshr1962さんの方法になるかと思います。
お礼
No.1さんのやり方でできました。 お礼が遅くなりました。ありがとうございました。
お礼
できました。 お礼が遅くなりました。 ありがとうございました。