Lazy loaded image在Excel工作簿内一秒自动创建工作表目录并设置超链接的小工具,建议收藏!

type
status
date
slug
summary
tags
category
icon
password
notion image

解决的具体问题

这个VBA代码的功能是:在当前工作簿内先创建一张工作表,并命名为“目录”,然后从这个工作表的B2单元格开始列示当前工作簿内的所有工作表的表名,按照工作表从左到右的顺序排列,并且对每一个表名做好工作簿内的直达超链接。
  1. 新建(或清空已有的)名为“目录”的工作表。
  1. 将该表移到最左侧。
  1.  B2 单元格开始,从上往下罗列当前工作簿所有工作表的名字。
  1. 给每个名字加上超链接,点击即可跳转到对应工作表的 A1 单元格。

操作演示视频

 

VBA源代码,请自取

 

如何使用这段代码

  1. 打开你的 Excel 文件。
  1. 按键盘快捷键 Alt + F11 打开 VBA 编辑器。
  1. 在菜单栏点击 “插入” (Insert) -> “模块” (Module)
  1. 在弹出的白色空白窗口中,粘贴上面的全部代码。
  1. 点击工具栏上的绿色小三角(运行按钮),或者直接按 F5 键运行。
  1. 关闭 VBA 窗口回到 Excel,你会发现最左边多了一个“目录”表,B2 开始列出了所有链接。

代码细节解释(防坑指南)

  • 关于排序:代码中的 For Each ws In wb.Worksheets 是按照工作表在 Excel 底部标签栏从左到右的实际顺序进行遍历的,所以生成的目录顺序就是当前工作簿现在的物理顺序。
  • 关于单引号:代码中有一句 SubAddress:="'" & ws.Name & "'!A1"。这里的单引号 ' 非常重要。如果你的工作表名字里有空格(比如 Sheet 1)或者特殊符号,不加单引号会导致超链接无效。这段代码已经处理好了这个问题。
  • 关于 B2:在代码里加了一个 B1 的标题“工作表索引”。如果你严格只需要从 B2 开始且 B1 留空,你可以把代码中 wsIndex.Range("B1")... 那两行删掉即可。
 
【扫码识别下方二维码,加入知识星球获取本文使用到的及历史以来提及、发布的相关精选和原创资料,和我们一起充电,加入后可享受每月6次免费咨询提问,帮助解决您的特定问题!】

如果本篇文章对您有帮助或启发,请帮我们点赞、转发、推荐、关注,让更多想转型财务BP、锻造数据分析和可视化洞察能力的财务同行们看到,关注【老汪洞察】,不迷路!
notion image
notion image
 
温馨提示
🙏🏻
如果您不想错过【老汪洞察】的文章,请将我们设为"星标",这样每次最新文章推送才会第一时间出现在您的订阅列表里。 方法:点击文章页面左上角蓝色文字“老汪洞察”进入主页,点击关注后,再点主页右上角"...",然后选择"设为星标",即可完成,感谢您的支持。
 
上一篇
YouTube博主必看:如何升级油管专用版 AdSense账号,接入自己的网站赚取广告费(实操指南)
下一篇
从Power Query到Power BI:¥699完整包年陪跑课程计划
Loading...
文章列表
让财税成为经营的力量
管理报表
从Power Query到Power BI,入门到精通
699课程讲义
VBA小工具
电脑与网络
知识运用