根据现有工作表中的现有单元格更改 Excel 工作表名称

根据现有工作表中的现有单元格更改 Excel 工作表名称

我的第一张工作表中 M6 到 M12 处有一个值列表。我希望第一个工作表名称是引用 M6 的内容。我希望第二个工作表名称是引用 M7 的内容,依此类推。如果我选​​择重命名并在第一个工作表上键入 =M6,我会得到所需的值。但是,当我转到下一张工作表并选择重命名并尝试引用第一个工作表和单元格时,这不起作用。任何指导都将不胜感激。

此外,工作表名称的内容已成功显示在我希望命名的特定工作表的单元格中。也就是说,在工作表 2 上,单元格 B3 包含来自工作表 1 单元格 M7 的引用。这就是我想要输入到工作表名称中的值。

答案1

Richard,我无法在我的 Excel 中模拟您描述的过程。此外,它可能会导致循环/无效引用。无论如何,假设您的 Sheet#2 是存储引用的 Sheet#1 之后的下一张 Sheet,下面的宏应该可以为您工作,而不会导致任何循环引用。

Sub Macro1()
If MsgBox("Is this your main sheet", vbYesNoCancel, "Is this your main sheet") = vbYes Then
    ActiveSheet.Name = ActiveSheet.Range("m6").Value
    newSheet1Name = ActiveSheet.Range("m6").Value
    ActiveSheet.Next.Select
    ActiveSheet.Name = Sheets(CStr(newSheet1Name)).Range("m7").Value
    ActiveSheet.Previous.Select
    MsgBox "Sheet names updated !"
Else:
    MsgBox "Cancelled !"
    Exit Sub
End If
End Sub

相关内容