某個實驗中,產生數十個excel檔案,希望每個excel檔案的檔名都能改成該檔案的A1儲存格的內容為檔名
解法
將以下巨集貼在「個人巨集活頁簿」中執行即可
個人巨集活頁簿其實在每次開啟EXCEL時,都會自動被開啟,但平常都看不到,因為被預設隱藏了。如果想要看到它,可以點選「檢視/取消隱藏視窗」,即可見到一個名為「PERSONAL.XLSB」的檔案
把巨集放在這個檔案裡,可以方便巨集跨檔案使用。
這個檔案在win 10 的預設儲存位置是
C:\Users\user name\AppData\Local\Microsoft\Excel\XLStart
巨集
Sub renameFileWithCellValue()
For Each w In Application.Workbooks
If w.Name <> "PERSONAL.XLSB" Then
w.SaveAs Filename:=w.Path & "/" & w.Worksheets(1).Range("A1").Value
End If
Next w
End Sub
在儲存有巨集的檔案時,excel會以不同副檔名儲存。我已將巨集存在PERSONAL.XLSB,而這個檔案不需要另存新檔,所以必須在巨集裡偵測:「非PERSONAL.XLSB的,才會進行另存新檔」