ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > 函数与公式 > 为什么单击hyperlink函数引用工作表超链接会显示“引用无效”提示?

为什么单击hyperlink函数引用工作表超链接会显示“引用无效”提示?

作者:绿色风 分类: 时间:2022-08-17 浏览:887
楼主
lrlxxqxa
Q:为什么单击hyperlink函数引用工作表超链接会显示“引用无效”提示?


 

A:问题的表象原因及处理办法是灰色字体(因为引用的工作表名称中有空格,删掉空格即可,否则当用hyperlink函数超连接时会造成“引用无效”警告。)这也是我最初对此问题的误解。


 

这个问题的本质原因不仅仅是空格,而是当工作表名称中含有【$ % ` ~ ! @ # ^ & ( ) + - = , | " ; { }】等字符或以数字开头时,跨表引用就需要在工作表名称前后加【'】号才能正常,也就是这种格式:'工作表名称'!单元格引用

由此,原问题附件中的公式应进行相应调整,把原公式形式如
  1. =HYPERLINK("#"&INDEX(sht,ROW(A1))&"!a1",INDEX(sht,ROW(A1)))
的在工作表名称前后加上’,修改为如下
  1. =HYPERLINK("#'"&INDEX(sht,ROW(A1))&"'!a1",INDEX(sht,ROW(A1)))


这样,即使工作表名称中含有各种上述符号,超链接也可以正常跳转了。
工作底稿(问题件).rar
2楼
gouweicao78
包含空格只是现象之一,删除空格只是做法之一。

本质是:
即,解决方案是工作表名前后加'号
3楼
lrlxxqxa
通过如下操作可见,公式中引用的工作表名称前后加'后,不但工作表名包含空格的可正常跳转,名称中带括号的工作表也可以顺利跳转。


 

当我们进行跨表引用时,Excel会根据所引用的工作表名称,自动决定是否添加',看如下操作:


 

可以看到,当工作表名称很规范时,跨表引用时工作表名称前后不会自动添加',当含有空格、括号等符号时,'自动会被添加在工作表名称前后了。
4楼
lrlxxqxa
indirect函数遭遇此类问题时也是同理解决:
[函数与公式] indirect函数不能引用名称中有()的工作表问题 http://www.exceltip.net/thread-2597-1-1.html
5楼
7786910
学习了
6楼
zhutou
谢谢斑竹了
7楼
APOLLO
学习了
8楼
未定尘埃
找了好久,终于找到这个解决办法了。
不过,我想问问就是,前面加的那个“#”是做什么用的呢?
我编辑的函数是这样的:
HYPERLINK(工作表名&"!a1",工作表名)
当工作表名没有那些符号的时候,就能正常超链接。
后来我发现括号的问题后,就改为
HYPERLINK("'"&工作表名&"'!a1",工作表名)
可是这个时候就显示为错误了。
对比LZ介绍的公式,关键就在于这个#.就是说改为HYPERLINK("#'"&工作表名&"'!a1",工作表名)就可以正常超链接了。
请问这个是做什么用的呢?
9楼
L_Yang136
"#"号表示本工作簿。
10楼
andrewyang
谢谢谢谢  疑惑很久了 谢谢高人们的分享

11楼
kmwyw86120
感谢楼主,这个问题已经解决了,不会再出现“引用无效”字样了!
12楼
七彩屋
在工作表名称前后加上’,解决了我的问题,谢谢。

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap