根据文件名自动重命名工作表

根据文件名自动重命名工作表

我想根据文件名重命名 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

在此处输入图片描述

相关内容