http://www.pptjcw.com

表格制作excel教程:VBA常用小代码:一键生成带超链接的工作表目录

    一个Excel工作簿,可能包含多个工作表;这时我们就希望能有一个工作表目录,一方面,可以纵览簿里有多少表、都是什么名字,另一方面,也可以通过超链接快速查看相关工作表的内容。

    那么说起制作工作表目录来,您首先想到的是什么?

    函数?

    厉害!不愧是拥有函数神技的办公能手。

    不过,一般情况下,我们可以使用Excel自带的工作表目录功能。


    表格制作excel教程:VBA常用小代码:一键生成带超链接的工作表目录

    如上操作动画所示,右键单击工作表左下角的两个小三角及之间的区域,Excel就会弹出一个类似工作表目录的界面;单击界面上的相应表名可以激活对应的工作表。

    是不是很方便呢?                            

    但有些时候,Excel自带的这个工作表目录界面就有些不方便了。

    工作表很多时,它的界面太小,一页放不下,查看起来明显就很不方便;另外它也不够美观,制作Excel模版时,给别人用起来又有点奇怪。别人问你,大哥,你做的 Excel模版,我想找某个工作表,好难啊。你回说:兄弟,你点这里,点那样,这样那样……嗯嗯,What are you 懂?……相信我,你解释了半天,但结果,听的人很可能一脸懵逼。

    所以还得使用函数制作工作表目录?

    ——NO!

    函数虽好,但需要用到宏表函数,还得定义名称,确实有点绕了。

    打个响指,请看大标题——我们今天分享的是一键生成带超链接的工作表目录。

    请看操作过程动画:


    表格制作excel教程:VBA常用小代码:一键生成带超链接的工作表目录

    动画中所复制的代码如下:

    Sub ml()
        Dim sht As Worksheet, i&, shtname$
        Columns(1).ClearContents
       ‘清空A列数据
        Cells(1, 1) = “目录”
       ‘第一个单元格写入字符串”目录”
        i = 1
       ‘将i的初值设置为1.
        For Each sht In Worksheets
           ‘循环当前工作簿的每个工作表
            shtname = sht.Name
            If shtname <> ActiveSheet.Name Then
           ‘如果sht的名称不是当前工作表的名称则开始在当前工作表建立超链接
                i = i + 1
               ‘累加i
               ActiveSheet.Hyperlinks.Add anchor:=Cells(i, 1), Address:=””,SubAddress:=”‘” & shtname & “‘!a1”,TextToDisplay:=shtname
               ‘建超链接
            End If
        Next
    End Sub

    酱紫是不是很有趣?

    如果想【目录】美观,可以选择【图形和形状】来作为宏代码运行的按钮,当然也可以对目录内容所在单元格做相应的美化处理。

    最后补充一点代码说明:

    小代码里用到了Hyperlinks.Add语句,这里用一个图片来解释它的每个参数。


    表格制作excel教程:VBA常用小代码:一键生成带超链接的工作表目录

    提示:如果您觉得本文不错,请点击分享给您的好友!谢谢

    上一篇:excel宏教程:就任性!批量更改工作表名称 下一篇:xcel表格制作教程入门:和身份证有关的5个Excel函数公式

    郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。