Excel中数据变动时不会自动重算如何实现index函数自动更新(excel可以选项,然后数据会自动更新)

网友投稿 1014 2022-06-29

通常会使用函数:=INDEX(GET.WORKBOOK(1),!$A1)为工作表做一个目录,GET.WORKBOOK(1) 用于提取当前工作簿中所有工作表名称,返回的是一个水平数组,INDEX 函数会按 A1 中的数字决定要显示第几张工作表的名称。由于宏表函数 GET.WORKBOOK(1) 在数据变动时不会自动重算,目录无法自动更新。

以上问题可以使用易失性函数NOW,其可以使工作表改名或增加、删除工作表时,公式能自动重新计算。例如表示当前时间的函数 NOW(),借助于当前时间的不断变化来实现对任何变化的强制计算。再加上函数 T(),将 NOW() 产生的数值转为空文本以免影响原公式结果。

所以改进后的 index 函数表现为:=INDEX(GET.WORKBOOK(1),!$A1)&T(NOW())

注:宏表函数 GET.WORKBOOK,不能直接在单元格公式中使用,必须通过才能起作用

简述

首先定义出一个名为“目录”的名称,接着在“用于公式”下拉菜单中单击新建的“目录”公式,下拉拖出很多行,在 B1 到 Bn 行会显示出每个 sheet 的字符串名称。

步骤

Excel中数据变动时不会自动重算如何实现index函数自动更新(excel可以选项,然后数据会自动更新)

1.如图所示,选中 B1 单元格,切换到“公式”选项卡,单击“定义名称”。

2.在弹出的新建名称窗口中输入名称,如“目录”。在引用位置中则输入公式=INDEX(GET.WORKBOOK(1),!$A1)&T(NOW()),单击“确定”即可定义出一个名为“目录”的名称。

3.回到当前页面后,选中 B1 单元格,在“用于公式”下拉菜单中,单击刚刚新建的“目录”公式。

4.单击单元格右下角的十字形图标下拉拖出很多行(有几个 sheet 就拖出几行)。这时候在 B1 到 Bn 行,会显示出每个 sheet 的字符串名称。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:竖向文本框居中对齐时如何设置文字从左向右读写(文本怎么居中左对齐)
下一篇:用Excel数据透视表的单字段透视功能统计各销售人员的销售总金额(excel 数据透视表 销售额 月份比例)
相关文章