【发布时间】:2018-01-10 09:28:00
【问题描述】:
以下代码添加/删除工作表并插入所有工作表名称的列表,同时使它们成为超链接:
https://stackoverflow.com/a/48159499/9102830
以下代码根据几个单元格名称更改工作表名称:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Address(0, 0) = "C13" Then
Sh.Name = Sh.Range("B33").Value + "_" + Sh.Range("C13").Value + "_" + Sh.Range("C22").Value + "_N01"
End If
End Sub
问题是:
- 不是在单元格输入更改时更改,而是可以自动完成吗?
- 它可以是“Sub add_sheet”代码的一部分吗?就像,如果我添加一个工作表,它应该根据单元格命名,并且由于它被复制并且单元格相同,因此显然会采用名称,在这种情况下,名称应该是“N02”而不是“N01” "(而不是 Excel 所做的默认 "(2)")。
- 最后,当/如果单元格发生变化,使工作表名称不等于以前的工作表名称,它会自动回到“N01”吗?
提前致谢!
【问题讨论】:
-
什么标准可以让它自动化?在我看来,当单元格更改并且您的工作表名称在此过程中更新时,它是自动的。
-
问题是“Private Sub Workbook_SheetChange”仅在通过输入单元格并更改输入来更改单元格输入时才有效,但是,我的单元格会根据其他单元格中的输入而更改,因此“ Private Sub Workbook_SheetChange" 无法识别更改。