Excel如何批量修改不同檔名(如何批量修改excel檔名)
先給大家看例項效果吧:
開始我們的製作過程啦。
首先新建EXCEL工作簿,在一個工作表中按照如下輸入設定:
一: A2單元格輸入文字:資料夾路徑;C2單元格輸入文字:讀取檔名後,請設定好新檔名後再執行檔案重新命名操作
二: A3:C3合併單元格
三: A4:C4合併單元格,並輸入分割線(主要考慮視覺效果及VBA執行排除空行)
四: A5單元格輸入文字:遍歷資料夾下所有檔名
五: B5單元格輸入文字:檔案型別
六: C5單元格輸入文字:設定新檔名(預設為原名)
七: 按照下圖步驟,將文末的程式碼複製寫入模組中:
八: 選擇A1單元格,在開發工具選項卡中,選擇插入選單中的按鈕(窗體控制元件),製作三個按鈕控制元件,設定文字為初始化(選擇指定名為“初始化”的巨集),讀取檔名(選擇指定名為“讀取檔名”的巨集),檔案改名(選擇指定名為“檔案重新命名”的巨集)。
九: 開始自由改名啦,體驗一下自己的勞動成果吧。解放你的雙手,大大提高效率。
如果喜歡,請點贊並關注一下。不想再動手的話,就私信我索要文件吧。
請把此文章分享給你的朋友們。
Sub 讀取檔名()
ActiveSheet.Rows("6:10000").Select
Selection.Delete Shift:=xlUp
ActiveSheet.Range("A6").Select
With Application.FileDialog(msoFileDialogFolderPicker)
.AllowMultiSelect = False
If .Show = -1 Then
[a3] = .SelectedItems(1)
End If
End With
Dim myPath$, i%
myPath = Dir([a3] & "/*.*")
Do While myPath <> ""
i = i 1
Cells(i 5, 1) = Left(myPath, InStrRev(myPath, ".") - 1)
Cells(i 5, 2) = Mid(myPath, InStrRev(myPath, "."), 9)
Cells(i 5, 3) = Left(myPath, InStrRev(myPath, ".") - 1)
myPath = Dir
Loop
End Sub
Sub 檔案重新命名()
filePath = [a3]
On Error Resume Next
n = 6
While Not IsEmpty(Cells(n, 1))
oldName = Cells(n, 1) & Cells(n, 2)
newNname = Cells(n, 3) & Cells(n, 2)
If Dir(filePath & "/" & oldName) = "" Then
MsgBox "請重新讀取檔名!"
Exit Sub
ElseIf n < ActiveSheet.Range("A" & Rows.Count).End(3).Row Then
Name filePath & "/" & oldName As filePath & "/" & newNname
ElseIf n = ActiveSheet.Range("A" & Rows.Count).End(3).Row Then
Name filePath & "/" & oldName As filePath & "/" & newNname
MsgBox "重新命名成功"
ActiveWorkbook.Save
Exit Sub
End If
n = n 1
Wend
End Sub
Sub 初始化()
Range("a3").Select
Selection.ClearContents
ActiveSheet.Rows("6:10000").Select
Selection.Delete Shift:=xlUp
ActiveSheet.Range("A6").Select
ActiveWorkbook.Save
End Sub