バラバラのファイル名を
連番+それぞれのファイルのセルの値+任意の文言(この場合はA5の値+(見積書))に
一括で変換するマクロ。
連番をつけないと同じ名前のファイルができそうなとき用のマクロ。
コード
Sub ファイル名変換連番付き() Dim Path As String Dim FileName As String Dim NewfileName As String Dim counter As Long 'マクロエクセルが保存されているフォルダのパスを取得 Path = ThisWorkbook.Path & "\" 'フォルダの中で拡張子がxlsxのファイルを取得 FileName = Dir(Path & "*.xlsx") '変数に連番を入れる counter = 1 '繰り返し処理 Do While FileName <> "" 'フォルダ内のエクセルを開く Workbooks.Open Path & FileName '新しいファイル名を指定 NewfileName = Format(counter, "00") & Range("A5") & "(見積書).xlsx" 'ファイルを閉じる ActiveWorkbook.Close '新しいファイル名に変更 Name Path & FileName As Path & NewfileName 'ファイルを再取得 FileName = Dir '連番を変更 counter = counter + 1 '繰り返し Loop MsgBox "ファイル名変換完了" End Sub
注意点
- 新しいファイル名を指定するコードは任意のものに編集すること