我想根据文件名重命名 Excel 中的第一个工作表或选项卡。如果我更改文件名,我希望第一个工作表自动重命名。我不希望包含 .xlsx。我尝试了这个宏:
Sub RenameSheet()
Dim myname
myname = Replace(ActiveWorkbook. Name, ".xls", "")
ActiveSheet.Select
ActiveSheet.Name = myname
Range("A1").Select
End Sub
但它不会自动重命名。
答案1
在 下插入此代码ThisWorkbook
。它将根据您当前的文件名重命名您的第一张工作表。
请记住,在 Excel 中打开文件本身时,您无法更改文件名。因此,您可以使用Workbook_open()
文件打开时触发一次的事件。
信息传递评论从右到左搜索第一个出现的点(.),以便知道在哪里用左边功能。
Private Sub Workbook_open()
Count = InStrRev(ThisWorkbook.Name, ".")
If Count > 0 Then
Sheets(1).Name = Left(ThisWorkbook.Name, Count - 1)
Sheets(1).Range("A2") = Left(ThisWorkbook.Name, Count - 1)
End If
End Sub