Не удается отформатировать тело моего шаблона электронной почты Bulk Automati c для Excel - PullRequest
0 голосов
/ 29 января 2020

У меня возникли проблемы с форматированием текста моего электронного письма и подписью в компании lo go. Ниже приведен пример того, какой формат я хотел бы включить в электронное письмо, оно из другого потока, но, к сожалению, я не смог применить решение к своему VBA без ошибок. ссылка на ветку для справки: Отправка автоматически заполненного шаблона электронной почты Outlook из Excel с несколькими ячейками текста и дополнительным форматированием текста

Код выглядит следующим образом

Option Explicit

Sub SendMail()

Dim outApp As Object
Dim i As Long

'Check if Outlook is open
On Error Resume Next
Set outApp = GetObject(, "Outlook.Application")
On Error GoTo 0

If outApp Is Nothing Then
    MsgBox "Outlook is not open.  Open Outlook and try again.", vbExclamation
    Exit Sub
End If

'Clear the ticks from column A
Columns("A:A").ClearContents

'The row in which the list of e-mails start
i = 6

While Cells(i, 2).Value <> ""
    updateMail Cells(i, 2), Cells(i, 3), Cells(i, 4), Cells(i, 5), _
        Cells(i, 6), Cells(i, 7), Cells(i, 8), Cells(i, 9), i
    i = i + 1
Wend

Set outApp = Nothing

End Sub

Sub updateMail(ToBox As String, CcBox As String, BccBox As String, _
Subject As String, Message As String, AttachmentList As String, _
AttachmentSeparator As String, Action As String, row As Long)

Dim outApp As Object
Dim outMailItem As Object
Dim i As Integer
Dim attachmentArray() As String

Set outApp = GetObject(, "Outlook.Application")
Set outMailItem = outApp.CreateItem(0)
attachmentArray() = Split(AttachmentList, AttachmentSeparator)

On Error GoTo ErrorFound

'The To, CC and BCC values can send e-mails to multiple recpients
'just ensure the e-mail addresses are separated with a semicolon (;)
With outMailItem
    .To = ToBox
    .CC = CcBox
    .BCC = BccBox
    .Subject = Subject
    .Body = Message

    For i = LBound(attachmentArray) To UBound(attachmentArray)
        .Attachments.Add Trim(attachmentArray(i))
    Next

    Select Case Action

        Case "Display"
            .Display
        Case "Save"
            .Close False
        Case "Send"
            .Send

    End Select

End With


'Display tick or cross
ErrorFound:
If Err.Number = 0 Then
    Cells(row, 1) = "ü"
Else
    Cells(row, 1) = "û"
End If

CleanUp:
Set outMailItem = Nothing
Set outApp = Nothing

End Sub

Ниже приведена таблица, которую я использую для своего массового автомата c шаблон электронной почты для справки.

любая помощь будет принята с благодарностью.

...