Excel VBA

[ExcelVBA]フォルダ内の大量のファイル名を変更する方法[高速にもほどがある]

2021年1月7日

 

本記事はエクセル2019で動作確認を行っています

 

困ってます
VBAを使用して、エクセルファイルをまとめて他の名前に変更する方法はありますか?

このような疑問にお答えします。

 

ロンピー
本記事を、書いているRonpeeeは2021年で15年ほど実務においてVBAをつかっています。

実務で実際に必要になったことがあり、その時は、5000個ほどのデータを1分もかからず変更することができました。

 

本記事は

VBAを使用し、フォルダ内のファイル名を高速で変更する方法

を紹介します。

 

 

注意

各自の環境にあわせてVBAを修正する必要がありますのでご注意ください。

 

(元のファイル名)

 

 

このようなファイルがあった場合、手作業で名前を変更することはかなり大変です。

これからご紹介するVBAを理解できれば、高速でファイル名を変更することができます。

VBAコードにアレンジを加えれば、様々な名前に変更が可能です。

いろいろ試して便利にご利用ください。

 

Option Explicit

Sub change_fileName()

    Dim path As String

    Dim fileName As String

    path = "C:\Users\\Desktop\test\" ‘①

    fileName = Dir(path & "*.xlsx")  ‘②


    Do While fileName <> "" ‘③

        Name path & fileName As path & "変更" & filename ‘④

        fileName = Dir() ‘⑤
    Loop

End Sub

 

解説

①変更したいフォルダのパス名を変数に格納します。

②Dir関数を使用し、ファイルの名前を変数に格納します。

ワイルドカード(*)と呼ばれる任意の文字列を取得する方法で、ファイル名を取得します。

③ファイル名がなくなるまでループを繰りかえす。

④今回は元のファイル名の頭に変更の文字をたす。

⑤fileName変数を初期化する。

 

 

(変更後のファイル名)

 

今回のポイントは 「Name 〇〇 As △△」 〇〇の名前を△△に変更する。です!

 

名前のつけかたは、変数を活用すればいろいろと変更可能です。

ぜひ、ご自身でVBAを記述しうごかすことをおすすめします。

 

今回はこの辺で、ありがとうございました。

 

 

 

-Excel VBA
-,

Copyright© Ronpeee blog , 2023 All Rights Reserved.