見出し画像

【Excel VBA】ファイル名を取得し、一括変換する(後編)

前回の続きを書きたいと思います。

前回の投稿では、フォルダ内にあるファイル名を一気に取得するコードでしたが、今回はその取得したファイル名を指定した名称に変更するコードです。簡単ですが、メモしておきます。

Sub ファイル名変換()
    Set ws = Worksheets("Sheet1")
    FName = ws.Cells(4, "B") '保存先(フォルダー)のパス
    LastRow = ws.Cells(Rows.Count, 1).End(xlUp).Row
    For i = 5 To LastRow
    Old = FName & "\" & ws.Cells(i, "A")
    New = FName & "\" & ws.Cells(i, "B")
    Name Old As New 'ファイル名を変更します。
    Next
End Sub

↓の部分がミソですね。取得したファイル名を、指定したセル内のファイル名に変更する部分です。Nameの使い方については、私もまだまだ勉強中です。。

Name Old As New 'ファイル名を変更します。

↓こんな感じにボタンを置いて、ファイル名を取得・変換してます。

図1

ボタン1:ファイル名を取得(前編のコードを登録)
ボタン2:ファイル名を変換(今回の後編のコードを登録)

少しでも参考になれば幸いです。VBAをガンガン使うようになったのは、本当に最近のことですが、知れば知るほど便利でいろんなことを試したくなります。

・・・とは言うものの、VBAのコードを説明するのは、普通の投稿よりも書き方がなかなか難しいですね、色々悩みます...(汗)本当はもっと順を追って、丁寧に説明して、自分の備忘録ともしたいのですが。。普段、参考にさせてもらっている様々なwebサイトで、記事を書いている方のそのすごさを実感します。

でも、あとから振り返ってみれば、「あのころはこんな書き方してたなぁ」というのが分かって良いのかもしれません。

noteとは、成長の記録にもなりますね。今後も、精進していきたいと思います。最後までお読みいただき、ありがとうございました。

この記事が参加している募集

noteのつづけ方

この記事が気に入ったらサポートをしてみませんか?