分享

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

 文炳春秋 2020-02-18

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

目录索引如何建立呢?

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

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

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

/ 01 /

定义名称

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

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

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

/ 02 /

创建目录

在B1单元格输入公式:

=IFERROR(HYPERLINK(shn&"!A1",MID(shn,FIND("]",shn)+1,99)),"")

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

公式解析:

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

  • GET.WORKBOOK

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

它提取工作表表名后返回的格式如“[快速建立目录索引.xlsx]目录”样式。

  • T(NOW())

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

T(value)

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

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

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

= INDEX(shn,ROW(1:1))&T(NOW())

向下填充公式,则返回下图的内容。

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

=IFERROR(HYPERLINK(shn&"!A1",MID(shn,FIND("]",shn)+1,99)),"")

  • MID(shn,FIND("]",shn)+1,99)

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

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

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

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

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

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

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

注意:

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

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

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多