从 Excel 发送电子邮件

问题描述 投票:0回答:1

我有一些 VBA 编码可以向收件人发送电子邮件,我从各个单元格中提取数据以填充电子邮件中的文本正文,所有这些都运行良好。

我正在努力的地方是能够在电子邮件文本正文中添加可点击的链接,将它们带到位于单元格 AM22 中的文件位置。

Sub email_from_excel_basic()

Dim emailapplication As Object
Dim emailitem As Object
Dim link As String

Set emailapplication = CreateObject("Outlook.Application")
Set emailitem = emailapplication.createitem(0)

' build the email

emailitem.to = Range("Handover!D9").Value
emailitem.Subject = "Handover Created."
emailitem.Body = "Handover created to carry out the following:" & vbNewLine & vbNewLine & Range("Handover!AL17").Value & "    " & Range("Handover!AM17").Value & vbNewLine & Range("Handover!AL18").Value & "  " & Range("Handover!AM18").Value & vbNewLine & Range("Handover!AL19").Value & "  " & Range("Handover!AM19").Value & vbNewLine & Range("Handover!AL20").Value & "  " & Range("Handover!AM20").Value & vbNewLine & Range("Handover!AL21").Value & "  " & Range("Handover!AM21").Value & vbNewLine & Range("Handover!AL22").Value & "  " & Range("Handover!AM22").Value

' send the email
emailitem.send

Set emailitem = Nothing
Set emailapplication = Nothing

End Sub

我尝试添加范围,但它仅填充单元格 AM22 中的文本,而不是作为链接。

excel vba email outlook hyperlink
1个回答
0
投票

不要使用纯文本

Body
属性,而是使用
HTMLBody
并使用包含
<a>
链接的 HTML 数据填充其值。

另请记住,链接指向的文件的位置必须可由预期接收者访问 - 它不能指向运行脚本的计算机上的本地文件。如果不是这种情况,请考虑将文件添加为附件 (

emailitem.Attachments.Add
)。

© www.soinside.com 2019 - 2024. All rights reserved.