Excel VBA提取带#及后续内容的超链接URL问题
修复VBA函数提取含锚点的完整超链接URL问题
原VBA函数仅能提取超链接URL中#(锚点)之前的内容,比如单元格链接为http://stackoverflow.com/hello#world时,调用函数只能返回http://stackoverflow.com/hello,无法获取锚点部分。
要获取包含锚点的完整URL,需要同时读取超链接的Address(URL主体)和SubAddress(锚点部分),并将二者拼接。修改后的VBA函数如下:
Function URL(Hyperlink As Range) Dim hLink As Hyperlink Set hLink = Hyperlink.Hyperlinks(1) URL = hLink.Address ' 如果存在锚点部分,拼接完整URL If hLink.SubAddress <> "" Then URL = URL & "#" & hLink.SubAddress End If End Function
使用说明:
- 当超链接无锚点时,函数返回完整的URL主体,和原函数效果一致
- 当超链接包含锚点时,函数会自动拼接
#和锚点内容,返回完整的URL
内容的提问来源于stack exchange,提问作者Lacer
相关产品推荐
相关产品推荐

