To post as a guest, your comment is unpublished.· 2 months agoHello, Kay,
To rename the files based on duplicate new names with name-1,name-2, the following VBA code may help you, please try it.
Note: After pasting this code, you should reference the Microsoft Scripting Runtime option in the References-VBAProject dialog box as below screenshot shown.
Dim xDir As String
Dim xFile As String
Dim xVal As String
Dim xRow As Long
Dim xCount As Long
Dim xTemp As Long
Dim xDictionary As New Dictionary
Application.ScreenUpdating = False
On Error Resume Next
.AllowMultiSelect = False
If .Show = -1 Then
xDir = .SelectedItems(1)
xFile = Dir(xDir & Application.PathSeparator & "*")
Do Until xFile = ""
xRow = 0
xRow = Application.Match(xFile, Range("A:A"), 0)
If xRow > 0 Then
xCount = 0
xVal = Cells(xRow, "B").Value
If Not xDictionary.Exists(xVal) Then
xDictionary.Add xVal, xCount
xDictionary.Item(xVal) = xDictionary.Item(xVal) + 1
xTemp = InStrRev(xVal, ".")
Cells(xRow, "B").Value = Mid(xVal, 1, xTemp - 1) & "-" & CStr(xDictionary.Item(xVal)) & Mid(xVal, xTemp)
Name xDir & Application.PathSeparator & xFile As _
xDir & Application.PathSeparator & Cells(xRow, "B").Value
xFile = Dir
Application.ScreenUpdating = True
How to rename multiple files of a folder in Excel?
May be most of us are suffered with this problem that we need to rename multiple files in a folder, to rename the filenames one by one will make us crazy if there are hundreds or thousands files in that folder. Are there any good functions for us to deal with this task?
If there are multiple files that you want to rename, first, you can list the old file names in a column of worksheet, and then enter the new filenames that you want to replace with. To quickly list all files in worksheet, you can use the Kutools for Excel’s Filename List utility.
|Kutools for Excel : with more than 120 handy Excel add-ins, free to try with no limitation in 60 days.|
After installing Kutools for Excel, please do as follows:( Free Download Kutools for Excel Now )
1. Click Enterprise > Import / Export > Filename List, see screenshot:
2. In the Filename List dialog box, click button to choose the file folder that you want to list the files, and then click All files from the Files type, see screenshot:
3. Then click OK button, all the filenames have been list in a column of a new worksheet, as well as some file attributes, and now, you can delete other unwanted columns and only leave the File Name column, see screenshot:
After listing all original filenames in one column A, and you should type new filenames in column B as following screenshot shown:
And here I will talk about a VBA code which may help you to replace the old filenames with the new filenames at once. Please do with following steps:
1. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications Window.
2. Click Insert > Module, and paste the following macro in the Module window.
VBA code: Rename multiple files in a folder
Sub RenameFiles() 'Updateby20141124 Dim xDir As String Dim xFile As String Dim xRow As Long With Application.FileDialog(msoFileDialogFolderPicker) .AllowMultiSelect = False If .Show = -1 Then xDir = .SelectedItems(1) xFile = Dir(xDir & Application.PathSeparator & "*") Do Until xFile = "" xRow = 0 On Error Resume Next xRow = Application.Match(xFile, Range("A:A"), 0) If xRow > 0 Then Name xDir & Application.PathSeparator & xFile As _ xDir & Application.PathSeparator & Cells(xRow, "B").Value End If xFile = Dir Loop End If End With End Sub
3. After pasting the code, please press F5 key to run this code, and in the Browse window, select the folder which you want to change the filenames in, see screenshot:
4. And then click OK, all the old filenames have been replaced by the new filenames immediately. See screenshots:
1. When you list your old and new filenames, the file extension must be included.
2. In the above code, the reference A:A indicates the old filenames list you want to rename, and reference B contains the new filenames that you want to use, you can change them as your need
Recommended Productivity Tools
Bring handy tabs to Excel and other Office software, just like Chrome, Firefox and new Internet Explorer.
Amazing! Increase your productivity in 5 minutes. Don't need any special skills, save two hours every day!
200 New Features for Excel, Make Excel Much Easy and Powerful:
- Merge Cell/Rows/Columns without Losing Data.
- Combine and Consolidate Multiple Sheets and Workbooks.
- Compare Ranges, Copy Multiple Ranges, Convert Text to Date, Unit and Currency Conversion.
- Count by Colors, Paging Subtotals, Advanced Sort and Super Filter,
- More Select/Insert/Delete/Text/Format/Link/Comment/Workbooks/Worksheets Tools...
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
To post as a guest, your comment is unpublished.· 2 months agoHello, some of the files have same name. Scripts skip those files. Is there a way to modify the script so it adds a number 1, 2, 3 and so on for every duplicate name?
To post as a guest, your comment is unpublished.· 8 months agoI am following the same process but couldn't succeeded in renaming the file i am also changing ("A:A") and ("B"). Is there any other valuve which i need to change in the code
To post as a guest, your comment is unpublished.· 9 months agoI cant understand with range ( A:A) or (B) how to define that, thank you
To post as a guest, your comment is unpublished.· 9 months agoHi, Dee,
As the note remind, the reference A:A indicates the old filenames list you want to rename, and reference B contains the new filenames that you want to use
, as following screenshot shown:
Hope this can help you, thank you!
To post as a guest, your comment is unpublished.· 10 months agoI would like to rename multiple files from folders and subfolders. So im thinking a VBA code there looks at the path there is in the Column 'Containing Folder' (I Check the checkbox 'Include files in subdirectories') I am no where near good enough for coding VBA, but i look and try to understand. Thanks
To post as a guest, your comment is unpublished.· 1 years agoThis is game changing. Thank you SO MUCH!!!