EXCEL VBA ファイル名の変更・ファイルの一括変更・ファイルの指定変更 (ファイルの操作)

 

 

EXCEL VBA ファイル名の変更・ファイルの一括変更・ファイルの指定変更 (ファイルの操作・取得)

 

 

 ●はじめに

社内の業務で色々なファイルを取り扱う事があると思いますが、10ファイル程度でしたら、手動で取り扱う事が出来ると思いますが、100件・1000件以上となると、とても大変です。ここで説明するのは、ファイル名の一括変更方法です。VBAプログラムを利用する事で、連続でファイル名を変更する事が出来ます。それでは、サンプルプログラムを交えて説明いたします。

 

 

 ●書式の説明 ファイルオブジェクト.Name

●ファイルオブジェクト Name

Name 旧ファイル名 As 新ファイル名

※ファイル名を変更します。

 

 

 ●FileSystemObjectの設定方法(参照設定)

●【FileSystemObject】とは、さまざまなファイルやフォルダー情報を調べたり、ファイルやフォルダーをVBAプログラムで操作する時に、FileSystemObjectを利用して簡単に情報取得や操作を行う事が出来ます。これから説明するプログラムにも利用していますので、必ず下記の通りに設定して下さい。

●FileSystemObjectを利用するための参照設定

【設定方法】
①VBE(Visual Basic Editor)から【ツール】を選択する
②【参照設定】をクリックする
③【参照設定ーVBAProject】の中から「Microsoft Scripting Runtime」にチェックする
④【OK】ボタンをクリックして設定します。

 

 

指定したファイル名を変更する (ファイルパス設定)

 

 

 ●プログラム説明 【サンプル①】 Name

下記のサンプルプログラムは、指定したファイル名を変更するサンプルプログラムです。
旧ファイル名を新ファイル名に変更します。事前にA列の【旧ファイル名】とB列の【新ファイル名】を設定します。

プログラムを実行すると、指定した【旧ファイル名】を【新ファイル名】に変更されます。
【注意】新ファイル名は、同じファイル名を割り振るとエラーになります。なお、サンプル②では、このエラーを解消する方法も説明いたします。

【下記のプログラムを実行準備】
① シート名を「Sheet1」
② ”C:\DATA”のフォルダーを作成します。
③ ②で作成したDATAフォルダー内に、アンケート①~⑤.pdfを作成します。

 

 

 

 

●実行前~実行後 ※プログラム実行後、A列で指定したファイル名をB列に指定したファイル名に変換されました。今回は、5ファイルに対してファイル名の変換を行いましたが、このプログラムを利用すれば、100でも1000でもファイル名を変換する事が出来ます。
(画面クリックして拡大)

 

 

指定したファイル名を変更する (新しいファイル名を確認してエラー制御)

 

 

●プログラム説明 【サンプル②】 Name

下記のサンプルプログラムは、サンプル①プログラムの応用になります。旧ファイル名から新ファイル名へ変換しますが、今回のプログラムは、機能追加として下記の機能を追加しました。

【機能追加】
①新ファイルが変換出来るか事前にチェックする。
②旧ファイル名から新ファイル名へ変換した結果がC列に反映する。

【下記のプログラムを実行準備】
① シート名を「Sheet2」
② ”C:\DATA”のフォルダーを作成します。
③ ②で作成したDATAフォルダー内に、アンケート①~⑤.pdfを作成します。
注意:【FileSystemObject】の設定を必ず行って下さい。

 

 

 

 

●実行前~実行後 ※プログラム実行後、A列で指定したファイル名をB列に指定したファイル名に変換するのですが、今回は、変換後となるB列の「新ファイル」をチェックして変換できるか確認してファイル名を変換します。
(画面クリックして拡大)

 

 

指定したファイル名を変更する (新しいファイル名を確認してエラー制御)

 

 

●プログラム説明 【サンプル③】 Name

下記のサンプルプログラムは、サンプル①+②プログラムの応用になります。基本的に旧ファイル名から新ファイル名へ変換しますが、今回のプログラムは、機能追加として下記の機能を追加しました。

●プログラムの説明
(今回のプログラムは2つのプログラムで構成されています。)
「ファイル名取得」・・・・Sub FilenameChange03()
「ファイル名変換」・・・・Sub FilenameChange04()

【機能追加】
①新ファイルが変換出来るか事前にチェックする。
②旧ファイル名から新ファイル名へ変換した結果がC列に反映する。
③ファイル名を変換するファイルをダイアログボックスから選択する(複数選択)
④旧ファイル名から新ファイル名に変換する際に、事前に新ファイル名が登録されているかチェックします。【下記のプログラムを実行準備】
・ シート名を「Sheet3」
・ 実行ボタンを作成
「ファイル名取得」・・・・Sub FilenameChange03()
「ファイル名変換」・・・・Sub FilenameChange04()
注意:【FileSystemObject】の設定を必ず行って下さい。

 

●「ファイル名取得」・・・・Sub FilenameChange03()

 

●「ファイル名変換」・・・・Sub FilenameChange04()

 

 

  ●実行前~実行後 ※プログラム実行後、下記の通りに実行されます。
①ファイル名を選択するとダイアログボックスが表示されます。
②ファイルを選択して、旧ファイル名としてファイル名とフルパスを取得します。
③変換する新しいファイル名を入力します。
④「ファイル名変換」ボタンをクリックします。(実行)
⑤変換結果が表示されます。
※変換結果が「完了」ならば、新ファイル名へ変換されています。
(画面クリックして拡大)

 

最後まで、ご覧いただきまして誠に有難うございました。
また、VBAに関するテクニックや便利な手法などをこのサイトに掲載していきますので、定期的に参照していただけると幸いです。