office2007怎么自动生成目录

我们经常会将相似的相关Excel工作表集中保存在同一个文档中,以便于表格间的引用和查看。当一个文档中有一定数量的工作表时,找到所需的工作表就变得非常麻烦。这时,如果可以设置一个“目录”工作表来显示所有工作表的名称和链接,那就简单多了。

下面介绍一种可以快速为Excel工作簿创建工作表目录的方法。

定义名称

打开Excel 2007,右击第一张工作表标签选择“重命名”,把它重命名为“目录”工作表。选中B1单元格,切换到“公式”选项卡,单击“定义名称”,在弹出的“新建名称”窗口中输入名称“工作表名”,在引用位置中则输入公式=INDEX(GET.WORKBOOK(1),$A1)&T(NOW()),单击确定即可定义出一个名为“工作表名”的名称。

公式中GET.WORKBOOK(1)用于提取当前工作簿中所有工作表名称,INDEX函数则按A1中的数字决定要显示第几张工作表的名称。此外,由于宏表函数GET.WORKBOOK(1)在数据变动时不会自动重算,而NOW()是易失性函数任何变动都会强制计算,因此我们需要在公式中加上NOW()函数才能让公式自动重算。函数T()则是将NOW()产生的数值转为空文本以免影响原公式结果。

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

目录设置

在“目录”工作表的A1单元格输入1,在B1单元格输入公式=IFERROR(HYPERLINK(工作表名&”!A1″,RIGHT(工作表名,LEN(工作表名)-FIND(“]”,工作表名))),””)。公式表示当名称“工作表名”的值为错误值时显示为空“”,否则创建指向“工作表名!A1”的超链接并显示该“工作表名”。

然后选中A1:B1单元格,把鼠标指向选中区右下角的“填充柄”按住鼠标左键向下拖动到300行,把公式和编号填充出300行,在A、B列就会马上自动列出所有工作表目录(图2)。单击相应工作表名称即可快速切换到该工作表中。请参照可能的最多工作表个数来决定向下填充行数,一般300个应该够了。

注:公式中RIGHT(工作表名,LEN(工作表名)-FIND(“]”,工作表名))这段函数的作用是除去“工作表名”中“]”以前的内容。若你不介意工作表名称前显示“[BOOK1.xlsx]”一类内容的话,可以把B1中的公式简化成=IFERROR(HYPERLINK(工作表名&”!A1″,工作表名),””)。

保存设置

切换到“开始”选项卡适当设置一下目录中的字体、字号和颜色等等,建议把字号放大并设置加粗以便查看,还要调整一下A:B列的列宽以便完全显示工作表名称。然后右击其他工作表标签选择“删除”,把所有其他工作表全部删除只保留一张“目录”工作表。最后单击“Office”按钮,选择“另存为”,在弹出的另存为窗口中选择保存类型为“Excel启用宏的模板(*.xltm)”格式、文件名为“目录.xltm”,保存到C:Program FilesMicrosoft OfficeOffice12XLSTART文件夹下,关闭Excel 2007退出。若你的Office不是按默认路径安装,请按实际安装路径修改。

三秒创建目录

以后要为工作簿创建目录就简单了,只要用Excel 2007打开要创建目录的工作簿,在第一张工作表的标签上右击选择“插入”,在“插入”窗口中双击选择“目录”,即可在第一张工作表前插入一张“目录”工作表,并显示出所有工作表目录。这操作有3秒就够了吧?

在“目录”工作表中,可通过对目录进行筛选、排序、查找来快速找到工作表名,然后单击工作表名即可打开相应工作表。创建目录后,在这个工作簿中增加、删除工作表或者修改工作表名称,“目录”工作表中的工作表目录都会自动更新。此外,前面我们只复制了300行目录公式,因此工作表总数超过300个时,超出的工作表名就不会显示了,得把“目录”工作表中A1:B1的公式再向下复制填充才行。

由于宏表函数GET.WORKBOOK(1)是通过宏功能起作用的,所以插入了工作表目录的文档最后都必须以“Excel启用宏的工作簿(*.xlsm)”格式另存,这样下次打开时才能正常显示工作表目录。此外,打开工作簿时,Excel 2007默认会禁用宏,得单击警告栏中的“选项”按钮,选中“启用此内容”单选项,确定后才能显示工作表目录。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 86345@qq.com 举报,一经查实,本站将立刻删除。
(0)
上一篇 2022-04-19 05:50:04
下一篇 2022-04-19 06:00:08

猜你喜欢

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注