添加到Outlook电子邮件正文的超链接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了添加到Outlook电子邮件正文的超链接相关的知识,希望对你有一定的参考价值。

我使用this link作为参考制作了以下代码:

Dim chartPath As String
Dim messageA As String
Dim hyperlink As String

'Set chart path
    chartPath = Environ("userprofile") & _
        "DocumentsChart " & Format(Now, "mm-dd-yyyy") & ".png"

'Set hyperlink
hyperlink = www.google.com


 'Set message A
 messageA = "<p style= 'font-family:arial;font-size:12'>" & "<b>" & Range("E17").Value & "</b>" & "<br>" & "<br>" & Range("E18").Value & "<br>" & "<br>" & Range("E19").Value & "<br>" & "<br>" & Range("E20").Value & " " & **"<b>" & "<u>" & "<a href =" & hyperlink & ">" & Range("E21").Value & "</a>" & "</u>" & "</b>"** & " " & Range("E22").Value & "<br>" & "<br>" & "<b>" & "<u>" & Range("E23").Value & "</u>" & "</b>" & "<br>" & "<br>" & "</p>"

With OutlookMailItem
     .htmlBody = messageA & "<img src ='" & chartPath & "'>"
End With

但是,包含超链接的文本一旦点击就不会将我引导到网站,我认为,使用字符串这部分就是问题所在。可能有什么办法可以解决这个问题

答案

我无法运行您的代码,但我发现这两行应该有一些变化:

'Set hyperlink
hyperlink = "www.google.com" 'Added ""
'Also you can set the value from a cell.
hyperlink = Cells(1,1).Value 'Get value from cell A1.

 'Set message A - Removed **
messageA = "<p style= 'font-family:arial;font-size:12'>" & "<b>" & Range("E17").Value & "</b>" & "<br>" & "<br>" & Range("E18").Value & "<br>" & "<br>" & Range("E19").Value & "<br>" & "<br>" & Range("E20").Value & " " & "<b>" & "<u>" & "<a href =" & hyperlink & ">" & Range("E21").Value & "</a>" & "</u>" & "</b>" & " " & Range("E22").Value & "<br>" & "<br>" & "<b>" & "<u>" & Range("E23").Value & "</u>" & "</b>" & "<br>" & "<br>" & "</p>"

请再次测试您的代码。

另一答案

将此行hyperlink = www.google.com更改为:hyperlink = "http://www.google.com"

如果您的URL中有空格,则需要用%20替换 - 这段代码会为您转换它:

hyperlink = Replace(hyperlink, " ", "%20")

以上是关于添加到Outlook电子邮件正文的超链接的主要内容,如果未能解决你的问题,请参考以下文章

Outlook 附件的超链接

将 Excel 范围内的超链接传输到 Outlook 电子邮件

从 Excel 打开 Word 文档并将内容粘贴到 Outlook 邮件的正文

我应该如何使用 Outlook 发送代码片段?

访问 VBA 以表格格式将查询结果发送到 Outlook 电子邮件

将Excel范围粘贴到Outlook电子邮件正文