Как вставить гиперссылку из столбца в тело письма Outlook - PullRequest
1 голос
/ 16 апреля 2019

У меня есть столбец «AB», в котором есть гиперссылка, которую я хотел бы включить в электронное письмо через VBA.

Гиперссылка меняется на строку. Я могу перетащить столбец через текст, однако в электронном письме не отображается гиперссылка.

Как мне сделать так, чтобы оно отображалось как гиперссылка?

Dim OutApp As Object
    Dim OutMail As Object
    Dim strto As String, strcc As String, strbcc As String
    Dim strsub As String, strbody As String

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    strto = Cells(FormulaCell.Row, "Y").Value
    strcc = ""
    strbcc = ""
    strsub = "MCR FORM"
    strbody = "Hi " & Cells(FormulaCell.Row, "O").Value & vbNewLine & vbNewLine & _
              "You have a open MCR that needs attention. Please Find the attachted MCR Form for material : " & Cells(FormulaCell.Row, "E").Value & _
              vbNewLine & vbNewLine & Cells(FormulaCell.Row, "AB").Value & vbNewLine & vbNewLine & "Thank you!"


    With OutMail
        .To = strto
        .CC = strcc
        .BCC = strbcc
        .Subject = strsub
        .Body = strbody
        'You can add a file to the mail like this
        .Attachments.Add ("P:\Inventory Control\Public\MCR Form Master.xlsm")
        .Display    ' or use .Send
    End With

    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

vbNewLine & vbNewLine & Cells(FormulaCell.Row, "AB").Value &

Я полагаю, что приведенный выше код должен быть ссылкой на ссылку HREF ??

1 Ответ

0 голосов
/ 17 апреля 2019

Работа с Свойство HTMLBody


В примере будет показана гиперссылка Нажмите здесь

.HTMLBody = "<A href=" & Sht.Range("A1") & "> Click Here </A>"

Или Это покажет значение A1 в виде ссылки

"<A href=" & Sht.Range("A1") & ">" & Sht.Range("A1") & "</A>" &

Полный код

Option Explicit
Public Sub Example()

    Dim Sht As Excel.Worksheet
    Set Sht = ThisWorkbook.Worksheets("Sheet1")

    Dim OutApp As Object
    Set OutApp = CreateObject("Outlook.Application")

    Dim OutMail As Object
    Set OutMail = OutApp.CreateItem(0)

    With OutMail
        .To = ""
        .CC = ""
        .BCC = ""
        .Subject = ""

        .HTMLBody = "Hi " & vbNewLine & vbNewLine & _
                    "You have a open MCR that needs attention. " & _
                     vbNewLine & vbNewLine & _
                     "<A href=" & Sht.Range("A1") & "> Click Here </A>" & _
                     vbNewLine & vbNewLine & _
                    "Thank you!"

        'You can add a file to the mail like this
        .Display    ' or use .Send
    End With

    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

Необязательный явный оператор (Visual Basic)

Вызывает явное объявление всех переменных в файле или разрешает неявное объявление переменных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...