如何通过Excel VBA在邮件正文插入可点击的网络文件超链接
解决方法
你当前使用的是HTML格式的邮件正文,直接用HTML的<a>标签包裹路径即可生成可点击的超链接,修改后的代码如下:
strbody_2 = "<BODY style=font-size:11pt;font-family:Calibri><b><u>CapAd File:</u></b><br>" _ & "<b><u><a href=""" & Sheets("Control").Range("CapAd_File") & """>" _ & Sheets("Control").Range("CapAd_File") _ ' 此处为文件存储路径 & "</a></u></b>"
修改说明
- 修正了原有代码的HTML标签嵌套错误,
<b>和<u>标签的开闭顺序对齐,避免部分邮件客户端解析样式异常 - 新增
<a>标签生成超链接,href属性填入读取到的文件路径,嵌套双引号是为了兼容路径中包含空格、特殊字符的场景 - 如需自定义超链接显示文本,只需修改
<a>与</a>中间的内容即可,示例:' 自定义显示文本示例 & "<b><u><a href=""" & Sheets("Control").Range("CapAd_File") & """>点击下载CapAd文件</a></u></b>"
注意事项
- 发送邮件时需指定使用HTML格式传输正文,以Outlook对象为例,需将正文赋值给
MailItem.HTMLBody属性,不能使用纯文本的Body属性 - 文件路径格式要符合规范:本地文件需添加
file:///前缀,网络共享路径需使用标准UNC格式或HTTP/HTTPS前缀,否则超链接点击会失效
内容的提问来源于stack exchange,提问作者user3663960
相关产品推荐
相关产品推荐

