VBA

複数のファイル名を一括で取得、置換するエクセルVBA

投稿日:2019年11月24日 更新日:

作業概要・目的

複数のファイル名を一括で取得する作業と、
複数のファイル名を一括で置換する作業を自動化、効率的に処理する。

対象ファイルはエクセル、CSV、ワードなど何でも可能。

詳細手順

複数のファイル名を一括で取得、置換するエクセルVBAを作成する。

エクセルファイルを新規作成。

 

「空白のブック」をクリック。

 

「ファイル」をクリック。

 

「オプション」をクリック。

 

「リボンのユーザー設定」をクリック。

 

「開発」をクリックして「OK」をクリック。

 

「開発」タブが表示されるのでクリック。

 

「Visual Basic」をクリック。

 

「ツール」タブ→参照設定の順でクリック。

 

「参照可能なライブラリファイル」から「Microsoft Scripting Runtime」にチェックを付けて、「OK」ボタンをクリック。

 

「挿入」をクリック。

 

「標準モジュール」をクリック。

 

ソースコードを貼り付け。
※ソースコードは下記を参考。

 

 

右上のボタンをクリックして「Visual Basic」を閉じる。

 

「ファイル」をクリック。

 

「名前を付けて保存」をクリック。

 

「参照」をクリック。

 

任意のファイル名を入力。
※例として「複数のファイル名を一括で取得、置換するエクセルVBA」と入力。
ファイルの種類で「Excelマクロ有効ブック(*.xlsm)を選択。
「保存」をクリック。

 

ファイル名を一括で取得、置換したいファイルを1つのフォルダに格納する。

フォルダを新規作成し、対象のファイルを格納する。
※フォルダ名は任意。例として「ファイル名を一括で取得、置換するテストフォルダ」と入力。

 

VBAを実行してファイル名を一括で取得する。

作成したVBAを含むエクセルファイルを開いて、「コンテンツの有効化」をクリック。
※設定により、「コンテンツの有効化」は表示されない(クリック不要の)場合あり。

 

「開発」タブをクリック。

 

「マクロ」をクリック。

 

「main」→「実行」をクリック。

 

メッセージが表示されるので確認して「OK」をクリック。

 

ファイル名を一括で取得したいファイルが格納されているフォルダを選択→「OK」をクリック。

 

メッセージが表示されるので確認して「OK」をクリック。

 

VBAを実行したファイルのシートにファイル名の一覧が作成される。

 

VBAを実行してファイル名を一括で置換する。

ファイル名の一覧のD列に置換後のファイル名を入力する。

 

「開発」タブをクリック。

 

「マクロ」をクリック。

 

「main2」→「実行」をクリック。

 

メッセージが表示されるので確認して「OK」をクリック。

 

ファイル名を一括で置換したいファイルが格納されているフォルダを選択→「OK」をクリック。

 

メッセージが表示されるので確認して「OK」をクリック。

 

フォルダ内のファイル名が置換されている。

 

完了。

効果

ファイル数と置換後のファイル名に依ります。
置換後のファイル名が連番など規則性があれば効果は高いと思われる。

工数

VBAを含むエクセルファイルの作成:3分。(※一度作れば使いまわし可能の為、以降は作成工数なし。)
VBAの実行:5秒ほど。(※ファイル名を取得、置換エクセルファイルが10個ほどの場合。)

検証(手順)

ファイル名を取得、置換希望のファイル名を目視にて確認。

事前確認点

現在のファイル名と置換後のファイル名の組み合わせを確認。

事後確認点

置換後のファイル名に入力相違がないか確認。

問題対応表

なし。

QA表

なし。

参考元情報・リンク

スポンサーリンク

pr001




pr001




-VBA

執筆者:

スポンサーリンク

スポンサーリンク

PR005


ハント

VBA、GoogleAppsScript、思考法など、
業務効率化に繋がる情報を投稿中です。

普段は某IT企業に勤務しています。
Twitter @skillhunter007

好きなもの:アイアンマン、

ほしいもの:フライデー
(アイアンマンに登場するAI)、
盗賊の極意(スキルハンター)、