【AccessVBA】複数csvファイルのインポート(サンプルあり)

Access

【サンプルファイルの環境】
Windows10(64bit)
Office365

AccessVBAで指定したフォルダ内にあるCSVファイルをテーブルにインポートする方法です。サンプルファイルはご自身の責任でご利用ください。なお、取り込むCSVファイルは複数(数百でも数千でも。。)でもOKです。数が多いほど作業コスト削減効果は大きいと思います。

目次

インポートまでの流れ

1. (8行目)CSVが保存されている対象フォルダを指定(例では”C:\test\”)
注意:ファイルパスの最後に\は忘れずセットすること

2.dir関するで指定したフォルダ内のCSVファイル名を1ファイルづつ取得(変数bufにファイル名をセット

3. (14行目)CSVファイルを指定したテーブル(例ではT_住所録)にインポートする

4. (16行目)インポートしたファイルを削除する14~16行目の処理を繰り返す

5.bufがNULLになるまで(csvファイルがなくなるまで)

    If MsgBox("ファイルを取り込みしますか?", vbOKCancel) = vbCancel Then
      MsgBox "処理を停止します"
    Else
      
      Dim file_path As String
      Dim buf As String
      
      file_path = "C:\test\"
      
      buf = Dir(file_path & "*.csv")
      
      Do While buf <> ""
        'T_住所にCSVファイルをインポート
        DoCmd.TransferText acImportDelim, , "T_住所録", file_path & buf, True, ""
        '取り込み終わったCSVファイルを削除
        Kill file_path & buf
        buf = Dir()
      Loop
      
        MsgBox "処理完了"
        
    End If
サンプルファイルのモジュール

【使い方】

  1. C:\test\フォルダを作成して、サンプルのcsvファイルを保存する
  2. モジュール内の「bas_csv_import」を実行する
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

CAPTCHA


目次
閉じる