首页 > EXCEL > 批量制作Excel工作表超链接 同一工作簿下

批量制作Excel工作表超链接 同一工作簿下

2010年9月3日 Surda 发表评论 阅读评论

我们上学时老师开讲前,经常会说:“请同学们翻到第七章第七节,我们今天要讲的是……”,这就是老师对照书目录找到指定教学内容。

今天Surda跟大家分享:在excel中,如何批量建立(这种形如目录的)工作表超链接

背景:有时我们一个工作簿里放置N个工作表(N甚至可能大于100),在这种情况下标签栏无法容纳所有sheet。

构想:我们能不能在工作簿的第一个sheet里建立一个形如书目录的导般链接?

成果:文末附实例下载


目录
GoTo 表1!A1
GoTo 表2!A1
GoTo Sheet4!A1
GoTo Sheet6!A1
GoTo Sheet5!A1
GoTo Sheet8!A1
GoTo Sheet7!A1
GoTo Sheet9!A1
GoTo Sheet10!A1

点击链接到达指定的工作表。

实现方法非常之简单,一公式即定。

=IF(ROW()>COUNTA(AllShs),"",HYPERLINK("#"&INDEX(AllShs,ROW())&"!A1","GoTo "&INDEX(AllShs,ROW())&"!A1"))

在任意单元格输入以上公式,下拉。

公式的中文解析 - 判断行号大于工作表数量则置空,不然,则运用HYPERLINK函数为工作表建立超链接。公式中AllShs为定义的名称,也是关建所在。

实现步骤

一、定义名称

CTRL+F3 - 新建名称

名称:AllShs

范围:工作簿

引用位置:=REPLACE(GET.WORKBOOK(1),1,FIND("]",GET.WORKBOOK(1)),)&T(NOW())

/*-----

GET.WORKBOOK(1)是宏表函数,以[Book1.xls]Sheet1的形式返回工作簿中所有工作表名的水平数组;

REPLACE(GET.WORKBOOK(1),1,FIND…是为了去掉前面的工作簿名,只保留工作表名;

T(NOW())="" 不影响公式结果,而NOW是易失性函数,可以使工作表改名或增加、删除、移动工作表时,公式能自动重新计算。

-----*/

二、输入上述公式,下拉,OK。

 

实例下载 批量制作工作表超链接

注意:该方法使用了宏表函数get.workbook(),需要启用宏。如果你的Excel宏安全性设置为高或禁止宏,则无法使用

ShareOn:
  •  
  1. 2010年9月3日02:12 | #1

    你的博客关于Excel的好多啊,我得保存起来以后慢慢看。

  2. 2010年9月3日03:43 | #2

    确实有很多有用的技巧

  3. 2010年9月3日04:22 | #3

    @末路花未央

    @BoKeam
    博文主题是关于Excel 自然会多一些 希望用的着 :)

  4. 2010年9月3日07:52 | #4

    哈哈,这个我会,话说这超链接是互联网的精髓啊!

  5. 2010年9月3日07:53 | #5

    这个技巧,很好! 以前还有人问我呢!我不会弄!呵呵。

  6. 2010年9月3日07:55 | #6

    下载练习去了!

  7. 2010年9月3日09:02 | #7

    @学夫子
    好样的

    @joyla
    原始的方法就是一个一个添加,这个更智能

    @joyla
    慢慢研究哈

  8. 2010年9月3日11:47 | #8

    收藏了以后有用··哈哈现在没有机会玩这个

  9. 2010年9月3日13:15 | #9

    @Surda
    看出来了,呵呵! 我明天才实践,呵呵!新主题 很养眼!

  10. 2010年9月3日14:05 | #10

    不错,很好

  11. 2010年9月3日15:27 | #11

    @哲哲
    这个实用性 应该强 以后用到的机会多

    @joyla
    哈哈 正好周末 好好研究

    @绿瘦减肥胶囊效果怎么样
    啧 啧 啧 你这名称......

  12. 2010年9月4日01:03 | #12

    不错。。下次试试

  13. 2010年9月4日16:42 | #13

    @飞猪
    呵呵 必须的

  14. 2012年1月28日15:53 | #14

    很不错,楼主真聪明,辛苦了,谢谢

  1. 本文目前尚无任何 trackbacks 和 pingbacks.