
我想根據兩個不同的變數(部分檔案名稱和部分儲存格內容)重新命名工作表
每個文件總共有五個工作表,收集並輸入資料後將其儲存為 PDF。
在檔案名稱中,我將使用前 3 或 4 個數字字元。 (圖1)
在單元格 I1 中,我將使用“UPHOLSTERY”之前的單字或大約前 5 到 11 個字符,具體取決於單字。 (圖2)
圖3顯示了最終結果。
答案1
在每個工作表儲存格中I1
,輸入公式:
=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+5,255)&MID(CELL("filename",A1),FIND("[",CELL("filename",A1))+4,FIND("]", CELL("filename",A1))-FIND("[",CELL("filename",A1))-9)
答案2
這是一個可以解決問題的宏
Sub worksheetRename()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = ThisWorkbook
'split the name of the file into words
na = split(wb.Name, " ")
'loop thru all worksheets
For i = 1 To wb.Worksheets.Count
Set ws = wb.Sheets(i)
'split cell A1 into words
nb = split(ws.Cells(1,1), " ")
'set name of worksheet
ws.Name = na(0) & " " & nb(0)
Next i
a = MsgBox("Done", vbInformation)
End Sub