我们经常将相似的相关Excel工作表保存在同一个文档中,这样就可以在表之间引用和查看。当一个文档中有一定数量的工作表时,要找到需要的工作表就变得非常麻烦。这时候如果能设置一个“目录”工作表,显示所有工作表的名称和链接,事情就简单多了。
这里有一个为Excel工作簿创建工作表目录的快速方法。
定义名称
打开Excel 2007,右键单击第一个工作表的选项卡并选择重命名,然后将其重命名为目录工作表。选择单元格B1,切换到公式页签,点击定义名称,在弹出的新名称窗口中输入名称工作表名称,输入公式=INDEX(GET。工作簿(1),$A1)T(NOW())在引用位置。单击确定以定义名为工作表名称(
公式得到。WORKBOOK(1)用于提取当前工作簿中所有工作表的名称,INDEX函数根据A1中的数字确定显示哪个工作表名称。此外,因为宏表函数GET。工作簿(1)在数据发生变化时不会自动重新计算,而NOW()是一个易变函数,任何变化都会强制计算,所以我们需要在公式中加入NOW()函数来自动重新计算。函数t()将NOW()生成的值转换为空文本,以免影响原来的公式结果。
注意:宏表函数GET。工作簿不能直接在单元格公式中使用,只能通过定义名称来工作。
目录设置
在目录工作表的单元格A1中输入1,并输入公式=IFERROR(超链接(工作表名称amp!A1 'RIGHT(工作表名称,LEN(工作表名称)-FIND(']'工作表名称),' ')。公式表明,当名称“工作表名称”的值为错误值时,将显示为空“”;否则,它将被创建为指向“工作表名称!A1 "并显示"工作表名称"。
然后选中A1: B1单元格,将鼠标指向所选区域右下角的“填充柄”,按住鼠标左键向下拖动到300行,用公式和数字填充300行。所有工作表目录将立即自动列在A列和B列中(图2)。单击相应的工作表名称可以快速切换到工作表。请参考工作表的可能最大数量,以确定要填写的行数。一般300应该够了。
注:公式中的函数RIGHT(工作表名称,LEN(工作表名称)-FIND(']'工作表名称)用于删除工作表名称中“]”前的内容。如果不介意在工作表名称前显示类似“[BOOK1.xlsx]”的内容,可以将B1中的公式简化为=IFERROR(HYPERLINK(工作表名称amp!A1 '工作表名称),' ')。
保存设置
切换到开始标签,设置字体,字体大小,颜色等。适当地放在目录中。建议放大字体并加粗查看,调整A: B列的列宽以完整显示工作表名称。然后,右键单击“其他工作表”选项卡,选择“删除”删除所有其他工作表,只留下一个“目录”工作表。最后,点击“办公”按钮,选择“另存为”。在弹出的另存为窗口中,选择“Excel启用宏的模板(*。xltm)”并且文件名是“目录。xltm”,并将其保存到C:Program Files Microsoft Office 12xl Start文件夹中。关闭Excel 2007并退出。如果您的Office没有安装在默认路径,请根据实际安装路径进行修改。
三秒钟内创建目录
将来很容易为工作簿创建目录。只需用Excel 2007打开工作簿创建目录,在第一张工作表的选项卡上右键选择插入,在插入窗口双击选择目录即可。您可以在第一个工作表之前插入一个目录工作表,并显示所有工作表目录。这个操作三秒钟就够了吧?
在目录工作表中,通过筛选、排序和搜索目录,可以快速找到工作表名称,然后单击工作表名称打开相应的工作表。创建目录后,在此工作簿中添加、删除或修改工作表名称将自动更新目录工作表中的目录。另外,我们只复制了300行目录公式,所以当工作表总数超过300时,多余的工作表名称将不显示,目录工作表中的公式A1: B1必须复制下来并填写。
因为宏表函数GET。工作簿(1)通过宏功能工作,所有插入工作表目录的文档必须以“Excel启用宏的工作簿(*。xlsm)”最后,以便下次打开工作表目录时可以正常显示。此外,当您打开工作簿时,默认情况下,Excel 2007将禁用宏。您必须单击警告栏中的选项按钮,选择“启用此内容”选项,然后确认显示工作表目录。