美文网首页
将多个EXCEL工作表建立目录索引

将多个EXCEL工作表建立目录索引

作者: python_Studio | 来源:发表于2020-02-27 23:03 被阅读0次

将100个EXCEL工作表建立目录索引,同事用1小时,我用1分钟

EXCEL工作簿中的工作表多了,查找某个工作表就比较麻烦,可以用建立目录索引的方式来实现快速定位到指定的工作表。

目录索引如何建立呢?

相信插入链接的操作好多人都会,但是如果工作表太多了,用这种方法操作时间也是比较久,而且重复机械的操作会让人抓狂。

今天给大家带来一个批量插入链接的简单方法。

01

定义名称

在【公式】选项卡【定义名称】功能区选择【定义名称】,在弹出的【新建名称】窗口中,【名称】文本框输入“目录索引公式”(自定名称),在【引用位置】文本框中输入公式:

=INDEX(GET.WORKBOOK(1),ROW(1:1))&T(NOW())

02

创建目录

在B1单元格输入公式:

=IFERROR(HYPERLINK(目录索引公式&"!A1",MID(目录索引公式,FIND("]",目录索引公式)+1,99)),"")

公式解析:

=INDEX(GET.WORKBOOK(1),ROW(1:1))&T(NOW())

GET.WORKBOOK宏表函数,它是提取工作簿下所有的工作表表名,把它定义名称才可以使用它。

它提取工作表表名后返回的格式如“[工作簿名称.xlsx]工作表名称”样式。

T(NOW())T是EXCEL中的一个函数,它的用法是:

T(value)

当value为文本型数据时,T函数将其返回原内容,当value为其它数据时则返回空值。公式中使用T(NOW())是为了保证工作表名可以实时更新,我们修改某个工作表表名时,目录页的内容会立即更新。

整个公式是返回所有的工作表名如果我们把=GET.WORKBOOK(1)定义名称目录索引公式,然后在B1单元格中输入公式:

= INDEX(目录索引公式,ROW(1:1))&T(NOW())

向下填充公式

=IFERROR(HYPERLINK(目录索引公式&"!A1",MID(目录索引公式,FIND("]",目录索引公式)+1,99)),"")

MID(目录索引公式,FIND("]",目录索引公式)+1,99)返回工作表表名后,我们要把“[工作簿名称.xlsx]”去除掉,用FIND函数找到“]”的位置,用MID函数从这个位置往后1个字符开始提取后面的字符,本例中是提取99个,99是代表足够大的数,只要它比工作表名的字符数都要大就可以。

继续上面的内容,我们在C1单元格中输入公式:

=MID(B1,FIND("]",B1)+1,99)

双击向下填充,即可把工作表名全部提取出来。

HYPERLINK函数是创建超链接,它可以指定跳转到某个工作表时光标定位的单元格,本例中的目录索引公式&"!A1"是我们统一让跳转到所有工作表的A1单元格。

IFERROR函数是如果出现错误值时,我们让它返回空值。

注意:

当我们保存工作簿时会提示如下窗口:

我们要把工作簿保存为xlsm格式。

相关文章

网友评论

      本文标题:将多个EXCEL工作表建立目录索引

      本文链接:https://www.haomeiwen.com/subject/qnzfhhtx.html