こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Access VBAでファイルのインポートについて

あるディレクトリにAccessのmdbファイルを置き、「インポート」フォルダを隣に置きます。
このフォルダ内にCSVファイルを置き、それをVBAでテーブル「tbl_import」にインポートさせたいのです。
ちなみにインポート後はディレクトリ「インポート」下層のディレクトリ「インポート済」に移動させたいのです。

下記例文では「file.csv」と書いていますが、このファイル名はインポートの都度、常に変わります。
インポートさせるファイルは常に一つです。

「*」を用いれば出来ると思っていたのですが、うまくいきません。
良い方法を教示いただけませんか。

DoCmd.RunSQL "DELETE * FROM tbl_import"
DoCmd.TransferText acImportDelim, "インポート定義", "tbl_import", CurrentProject.Path & "\インポート\file.csv", True
FileCopy CurrentProject.Path & "\インポート\file.csv", CurrentProject.Path & "\インポート\インポート済\file.csv"
Kill CurrentProject.Path & "\インポート\file.csv"

投稿日時 - 2013-04-24 15:24:40

QNo.8057525

困ってます

質問者が選んだベストアンサー

こんな感じで。

Dim strFile As String
Dim strPath As String

strPath = CurrentProject.Path & "\インポート\"

strFile = Dir(strPath & "*.csv")
If strFile <> "" Then
  DoCmd.RunSQL "DELETE * FROM tbl_import"
  DoCmd.TransferText acImportDelim, "インポート定義", "tbl_import", strPath & strFile, True
  Name strPath & strFile As strPath & "インポート済\" & strFile
End If

投稿日時 - 2013-04-24 16:45:57

お礼

ありがとうございます。お陰様で目的の処理をさせることができました。篤く御礼申し上げます。

投稿日時 - 2013-04-25 08:26:57

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問