【VBA】指定した複数のファイルを抽出してコピペするエクセルマクロ

【VBA】指定した複数のファイルを抽出してコピペするエクセルマクロ

複数のファイルが含まれているフォルダから指定したファイルを抽出してコピー&ペーストする、VBAの簡単な作業マクロを作りました。

エクセルで完結させてしまいましたが、コピーするファイルの指定はcsvなどで行ってそれをインポートする方が処理として綺麗だと思います。

コード

Sub CopySelectedFiles()
' A列で指定したファイルを宛先にコピペする

Dim filename As String

Range("A1").Select
' データの先頭を選択

Do While ActiveCell <> ""
    filename = ActiveCell
    FileCopy "<コピー元>" & filename, "<コピー先>" & filename
    ActiveCell.Offset(1, 0).Activate
Loop

Debug.Print "done"

End Sub

前提条件

前提条件は次のとおりです。例外処理を作り込んでいないので、運用でまかなっています。

  • コピーしたいファイルのファイル名がA列に記入されていること(A1、A2...)
  • A列には↑以外記入されていないこと
  • <コピー元>と<コピー先>は末尾の「\」まで指定されていること

この記事を読んだ人にオススメ