【问题标题】:Add a hyperlink to a body of text向正文添加超链接
【发布时间】:2020-05-08 10:35:49
【问题描述】:

以下代码用于在对工作簿进行更改时发送电子邮件。

我想更改文本正文中的文件位置,使其成为超链接。

我试过click<a href=""

为了数据保护,我删除了电子邮件地址。

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Dim Outlook As Object, EMail As Object
    
    Set Outlook = CreateObject("Outlook.Application")
    
    Set EMail = Outlook.CreateItem(0)
    
    With EMail
        .To = " "
        .CC = ""
        .BCC = ""
        .Subject = "Billing Block Sheet"
        .Body = "Hi." & vbCrLf & vbCrLf & "A change has been made to the billing block spreadsheet." & vbCrLf & vbCrLf & "P:\Admin\Wilson Pre pack (billing block).xlsm"
        .Display   'or use .Send to skip preview
    End With
    
    Set EMail = Nothing
    
    Set Outlook = Nothing
End Sub
    
Private Sub Workbook_Open()
    
End Sub

【问题讨论】:

  • 它只是不断向我抛出语法错误
  • 可能是因为我用来分隔段落的“& vbCrLf & vbCrLf &”?

标签: excel vba hyperlink html-email


【解决方案1】:

您需要使用.HTMLBody 而不是.Body<br> 而不是vbCrLf,并且您需要加倍引号,因为您正在构建一个字符串并且您希望引号包含在字符串中。

你是这样的:

.HTMLBody = "Hi.<br><br>A change has been made to the billing block spreadsheet.<br><br><a href=""P:\Admin\Wilson Pre pack (billing block).xlsm"">click here</a>"

【讨论】:

  • 我需要将 strBody 添加到现在的 html 中吗?
  • 谢谢,我意识到我曾尝试更改正文格式并且在尝试使用 2 个引号而不是 3 个引号之前没有将其删除,因此在我意识到之前出现了运行时错误。非常感谢……对这些东西的标点符号非常敏感。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-26
相关资源
最近更新 更多