VBAで
・ファイル名を変更
できます!
ここでは
・私が可読性が良いと考える方法
を記載します!
※実現方法は複数あります。
※可読性が良い方法を知っておけばよいです。
VBAコード
ここでは例として
・デスクトップ配下にあるファイル「aiueo.txt」のファイル名を
・「newFileName.txt」へ変更
します。
Option Explicit
Sub sample()
Dim fso As Object
Dim filePath As String
Dim newFileName As String
'変更前のファイルのパスを指定
filePath = "C:\Users\user\Desktop\aiueo.txt"
'変更後のファイル名
newFileName = "newFileName.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
'ファイル名を変更
fso.GetFile(filePath).Name = newFileName
'後片付け
Set fso = Nothing
End Sub
実行結果
ファイル名を変更できました。
※ファイル名を「aiueo.txt」から「newFileName.txt」へ変更できました。
備考(Nameステートメントはオススメしない)
「Nameステートメント」でもファイル名を変更できます。
またファイルの移動(パスの変更)も、「Nameステートメント」によりできます。
ただ「Nameステートメント」だと
・ファイル名の変更をしているのか
・ファイルの移動(パスの変更)をしているのか
が直感的に分かりづらいため、「Nameステートメント」の使用はオススメしません。
Option Explicit
Sub sample()
'ファイル名の変更
Name "C:\Users\user\Desktop\aiueo.txt" As "C:\Users\user\Desktop\newFileName.txt"
End Sub
Option Explicit
Sub sample()
'ファイルの移動(パスの変更)
Name "C:\Users\user\Desktop\aiueo.txt" As "C:\Users\user\フォルダ001\aiueo.txt"
End Sub
参考①
ファイルを移動することもできます。
詳細は以下の記事をご確認ください。
参考②
ファイルをコピーすることもできます。
詳細は以下の記事をご確認ください。
参考③
ファイルを新規作成することもできます。
詳細は以下の記事をご確認ください。
参考④
ファイル名を変更する前に、変更後のファイル名の存在有無を確認した方が良いかもです。
ファイルの存在有無の確認方法は、以下の記事をご確認ください。
参考⑤
ファイル名ではなく、フォルダ名を変更することもできます。
詳細は以下の記事をご確認ください。
参考⑥
「ステートメント」の詳細は、以下の記事をご確認ください。
参考⑦
「Nameステートメント」の詳細は、公式サイトをご確認ください。
参考⑧
上記のVBAコードで使用した以下の詳細は、公式サイトをご確認ください。
●「FileSystemObject」の「GetFile」メソッド
●「Fileオブジェクト」の「Name」プロパティ