魔兽僵尸入侵2016攻略:Excel:如何使用VBA建立对隐藏工作表的超链接

来源:百度文库 编辑:中财网 时间:2024/04/19 23:50:40

Excel:如何使用VBA建立对隐藏工作表的超链接

(2010-09-20 22:51:30) 标签:

excel

vba

链接

隐藏

工作表

分类: Office软件应用

 

接昨天的任务。在成功设置好只显示部分区域,其余部分不显示且不可编辑之后,晕晕突然觉得Excel工作簿底部的那些长串的工作表名称很碍眼。于是,一不做二不休,直接对总表之外的其他子工作表设置了隐藏。

然后,意想不到的一幕发生了,晕晕在总表里设置好的那些指向子表的链接统统不再起作用了!起初晕晕以为是因为先设置了链接又进行了隐藏,所以才会使得原来的链接无法识别。于是第二次打算先进行隐藏再进行链接,然而晕晕发现工作表隐藏之后,超链接更是无法指向它们了。郁闷哈~~~

于是,开始搜索引擎:

首先,搜索无法进行超链接的原因,知道隐藏工作表本来就是无法建立链接来指向它们。

然后,搜索解决方法:答案:VBA,only!

再然后,如何使用VBA建立对隐藏工作表的超链接。

这个过程异常艰辛,一方面是老板希望尽快看到他想要的文件,另一方面晕晕始终不愿将之前那个不够好的文件传给他(这完全是因为晕晕知道了还有VBA这回事儿的原因)!

经过某论坛的某大虾指点帮助,晕晕终于成功搞定了!

以上为背景。是为记。

**********************我是晕晕的分割线*************************

本文酝酿中的结构分为两部分:

第一,开门见山,如何使用VBA建立对隐藏工作表的超链接。

第二,为什么你的Excel不支持VBA(换言之,我简单抛砖引玉一下吧)~~

如何使用VBA建立对隐藏工作表的超链接

如图所示,晕晕首先建立了一个工作簿“天干地支”,其中含11个worksheet,第一个worksheet名为“天干”,后面十个依次命名为甲、乙、丙、丁、戊、己、庚、辛、壬、癸。

——最终的目标是当前只显示“天干”worksheet,隐藏后十个worksheet,但是要在第一个“天干”工作表中显示出后十个表格对应的序号的名称,并通过超链接进入对应worksheet。同时,在后十个worksheet中放入返回“天干”的链接,一旦返回“天干”后,该worksheet继续隐藏。Okay。

第一,按照最常用的方法对“天干”worksheet中的对应名称建立超链接。

 

第二,按Alt+F11,启动VBA编辑,点击左侧“天干地支”工作簿下的“天干”worksheet,在右侧打开的编辑框中复制以下代码:

 

Private Sub Worksheet_Activate()

        Dim sht As Worksheet

        For Each sht In Worksheets

               If sht.Name <> Sheets(1).Name Then sht.Visible = xlSheetVeryHidden

        Next sht

End Sub

 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

               On Error Resume Next

              Sheets(Target.Value).Visible = xlSheetVisible

              Sheets(Target.Value).Select

End Sub

第三,运行代码并保存退出。

 

Okay,试一下,是不是你想要的效果呢?

其实,通过我在论坛里的观察,这个只是最最简单,也最最省事的一种方法。Excel无比奇妙,更多的功能实现,还是要老老实实学习才可以。 

为什么你的Excel不支持VBA

——为你的Excel启用宏

通常我们的Excel程序中宏是默认关闭的(即安全性设置高,防止文件中带有潜藏的不安全的宏)。为了要设置以上的效果,必须要启用宏。

Excel2003下如何开启宏:

数据—宏—安全性—安全级—低。

Excel2007下如何开启宏:

左上角Office按钮—Excel选项—信任中心—信任中心设置—宏设置—启用所有的宏。

 ********************

    到这里为止,对于一个满足基本功能的链接隐藏工作表就完成了。

    之前Office软件用的都还算熟练,也很注意日常的学习和积累,但经验用时方恨少啊!开这个博客也是为了能鞭策一下自己,除了琐碎的心情之外,也应该更注意知识的学习和积累