还在手动插入Excel目录?

Excel 11个月前 芮和
931 0 0

Hi,大家好,这里是芮和。这是我们的第3个VBA自定义插件分享,在之前的教程中,我们分享了VBA自动生成报表、快速合并文档的小插件。今天我们来分享一个VBA自动生成目录的小插件。

之前有不少同学在后台询问过有没有Excel快速目录制作的方法?对于一些复杂的Excel文档,使用目录能够帮助我们快速了解文档的大纲,并且便于导航,这个小技巧也是非常棒的,文末附下载地址

你有什么想实现的VBA功能呢?可以在评论区留言,我们将挑选部分同学的留言进行实现~

快速生成目录

大型Excel文档通常有十几乃至几十个工作表,通常会有一页目录页来快速完成文档之间的导航,在没有学习VBA的时候,我们会使用手动录入的方式来生成超链接目录,其实这些重复性的工作交给VBA就可以了,哪怕几十上百份工作表,一秒生成目录~

在底下有1~12月的数据报表,我们生成一个新的工作表,命名为「目录」,在这里,我们会将目录单独放置一份工作表~

还在手动插入Excel目录?
单独生成目录

接着选择「开发工具」选项卡,点击「查看代码」,将代码复制进入:

Sub auto_menu()
    Dim sht As Worksheet, i&, strShtName$
    Columns(1).ClearContents
    Cells(1, 1) = "文档目录"
    i = 1
    For Each sht In Worksheets
        strShtName = sht.Name
        If strShtName <> ActiveSheet.Name Then
            i = i + 1
           ActiveSheet.Hyperlinks.Add anchor:=Cells(i, 1), Address:="", SubAddress:="'" & strShtName & "'!a1", TextToDisplay:=strShtName
        End If
    Next
End Sub

然后点击「运行」,可以看到目录就全部被生成了:

还在手动插入Excel目录?
写入代码

这里还有一点需要注意一下,使用了VBA代码的Excel文档,必须保存成.xlsm的格式,只有这个格式才支持VBA。

因为本文属于自定义插件篇,这里的代码就不提供详细的说明了,关于VBA的使用,我们会在教程中为同学详细讲解。

版权声明:芮和 发表于 2020-07-06 0:00:38。
转载请注明:还在手动插入Excel目录? | 芮和

相关文章

暂无评论

暂无评论...