首页 文章

更改或删除工作表名称时,为什么我的工作表工作表名称列表不会更新?

提问于
浏览
2

在Excel 2010中,我有一个工作簿,其中包含一列,用于标识工作簿中每个工作表的名称 . 以下公式用于此: =INDEX(SheetList,ROW()) 其中SheetList是对以下公式的命名引用: =REPLACE(GET.WORKBOOK(1),1,FIND("]",GET.WORKBOOK(1))," ") .

添加新工作表时列表会更新,但更改工作表名称或删除工作表时不会更新 . 我发现更新列表的唯一方法是将公式复制并粘贴回列的所有单元格 . 有关为什么它不自动更新,可以做什么使其自动更新,或者可能是一个热键命令使公式更新的任何想法?

2 回答

  • 1
    • 使用热键命令计算它:CTRL ALT SHIFT F9

    • 为了使其自动更新,我们可以添加一个返回空字符串的易失函数,如 TODAY()

    =INDEX(SheetList,ROW())&IF(TODAY()=TODAY(),"")

    这对我有用,并在删除或重命名工作表时自动更新,但在添加新工作表时无效(但按F9更新) .

  • 1

    如果可以合理地假设'the list'在C2中启动并从那里填写,则右键单击工作表的名称选项卡并选择查看代码 . 当VBE打开时,将以下内容粘贴到名为Book1 - Sheet1(Code)的代码表中 .

    Private Sub Worksheet_Activate()
        Range(Cells(2, 3), Cells(Rows.Count, 3).End(xlUp)).FillDown
    End Sub
    

    每当您返回(也称为激活)包含工作表列表的工作表时,列表都将更新 .

相关问题