Windowsでファイル名を連番でリネームするバッチ

デジカメの画像を整理していた時のこと。

hogehoge1.jpg, hogehoge2.jpg, hogehogehoge3.jpg...

といったように名前がバラバラであるファイルを一発で

A001.jpg, A002.jpg, A003.jpg...

というように連番にリネームするバッチ。

こちらを参考にさせていただきました。


rename.vbs

' オブジェクトを作る
Set fso = CreateObject("Scripting.FileSystemObject")

' 対象フォルダを設定
str_folder = "C:\Users\hogehoge\Document\デジカメ\"
Set folder = fso.GetFolder(str_folder)

i = 1

' 対象ファイルのすべてのファイルを見る
For Each FileName In folder.Files
'3桁の0パディングされた文字列を作る
numStr = String(3-Len(CStr(i)), "0") & CStr(i)

'変更後のファイル名
TargetName = "A" & numStr & ".jpg"

'リネーム
fso.MoveFile FileName, str_folder & TargetName

'カウンタを増やす
i = i + 1
Next