你一定没见过这样的超链接,超链接与工作表自动关联,同步更新

懒人办公
懒人办公

创作者俱乐部成员

【案例描述】

如下,第一张工作表名为【目录】,每新增一张工作表,则会自动在【目录】工作表中添加一个超链接,超链接名称与新工作表名称一致,并且在新工作表A1单元格自动设置一个名为“返回”的超链接,点击时可返回到【目录】工作表的相应位置,比如点击【办公室】工作表中的“返回”超链接,则自动跳转到【目录】工作表中的“办公室”超链接位置;修改工作表名称时,【目录】中的超链接名称同步修改;删除工作表时,【目录】工作表中的超链接同步删除。

【操作效果】

【JSA代码】

按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。

👉

//工作表超链接自动更新

function Workbook_SheetActivate(Sh)

{

if(Sh.Name!='目录'){return;} //如果工作表名不为“目录”,则退出程序

Range("a2:a" + Rows.Count).Value2 = null; //清空“目录”工作表的A列

for(sh1 of Sheets){ //遍历所有工作表

if(Sh.Name!=sh1.Name){ //如果工作表不是“目录”

i = Range("a" + Rows.Count).End(3).Row + 1 //取目录表最后一行数据的下一行

Sh.Hyperlinks.Add(Cells.Item(i, 1), "" //接下一行代码

,'\'' + sh1.Name + '\'' + '!a1', "", sh1.Name)//在目录表设置超链接,引用当前表的A1单元格

sh1.Hyperlinks.Add(sh1.Range('a1'), "" //接下一行代码

, '\'' + Sh.Name + '\'' + '!a'+i, "", "返回") //在当前工作表设置返回目录表的超链接

}

}

}

【素材下载】

https://kdocs.cn/l/cjPzYdzbrPfo

贵州省
浏览 8553
16
46
分享
46 +1
32
16 +1
全部评论 32
 
王忠云
目录在A列,如果想让目录在c列,修改那个位置呢?
· 山东省
回复
 
強
受益良多,谢谢。
· 云南省
回复
 
WPS_1657859017
以后会经常来学习
· 四川省
回复
 
辛德瑞拉
感谢,有用
· 江西省
回复
 
A.襄垣大地保险荣玲玉
好用,感谢
· 山西省
回复
 
李大龙``
很好用,很实用
· 山东省
回复
 
回眸一笑・_・ノ百妹疯
感谢老师分享。
· 云南省
回复
 
背对阳光1405060458
感谢,学会了
· 内蒙古
回复
 
WPS_1701059801
大神!
· 广西
回复
 
豪子
不错不错,牛逼
· 陕西省
回复
 
陈阿斗。
牛逼666学到了
· 辽宁省
回复
 
今非昔比
求链接,感觉对自己有用
· 广东省
回复
 
99*星星*缘
不错不错,有收获
· 青海省
回复
 
林
看了,虽然不是很懂,这个对管理订单很有用
· 浙江省
回复
 
佳
感谢分享
· 新疆
回复
 
        
👍🏻👍🏻👍🏻👍🏻👍🏻
· 江苏省
回复
 
新空气
感谢分享
· 云南省
回复
 
王齐海
感谢分享
· 江西省
回复
 
高伟
高手啊
· 浙江省
回复
 
拜仁诚哥
不愧是高手,有了这个太好了,学习学习。
· 中国
回复