在Excel中,以工作簿目录为例。如果我们想为工作表创建一个目录,我们将使用函数:=INDEX(GET。工作簿(1),1美元)
公式得到。WORKBOOK(1)用于提取当前工作簿中所有工作表的名称,INDEX函数会根据A1中的数字决定显示哪个工作表名称。
但是,因为宏表函数GET。工作簿(1)不会在数据更改时自动重新计算,目录不能自动更新。我该怎么办?
此时,我们可以使用volatile函数。比如代表当前时间的函数NOW(),借助于当前时间的常数变化,实现了任意变化的强制计算。添加函数t(),将NOW()生成的值变成空文本,以免影响原来的公式结果。
所以改进后的索引函数是:=INDEX(GET。工作簿(1),$A1)T(NOW())
注意:宏表函数GET。工作簿不能直接在单元格公式中使用,必须通过才能工作。
操作步骤:
选择B1单元格,切换到公式页签,单击“定义名称”。
在弹出的新名称窗口中输入名称,如“目录”。输入公式=INDEX(GET。工作簿(1))在引用位置!$A1)T(NOW()),点击“确定”定义一个名为“目录”的名称。
返回当前页面后,选择单元格B1,在“For Formula”下拉菜单中,单击新创建的“Catalog”公式。
点击单元格右下角的十字图标,下拉多行(如果有多张,拖出几行)。此时,每个工作表的字符串名称将显示在B1到Bn行中。