Изменить формат текста, вставленного в Outlook - PullRequest
0 голосов
/ 21 января 2020

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

Как я могу это сделать?

For i = 10 To 18
    If Not Cells(i, "A").Text = vbNullString Then
        'Add to growing string
        concatString = concatString + Cells(i, "A").Text & ", " & _
          Cells(i, "B").Text & vbCr
        concatString = concatString + "Assignment/Zone: " & _
          Cells(i, "C").Text & vbNewLine & vbCr
    End If
Next i

myMail.Body = Range("B2") & " Shift" & "  -  " & Format(Date, "mmmm dd, yyyy") _
    & vbNewLine & vbNewLine & "Sergeant: " & Range("A6") & ", " & Range("B6") & _
    vbNewLine & "          Status: " & Range("C6") _
    & vbNewLine & vbNewLine & "Corporal: " & Range("A8") & ", " & Range("B8") & _
    vbNewLine & "          Status: " & Range("C8") _
    & vbNewLine & vbNewLine & "Assigned Deputies" & vbNewLine & vbNewLine & concatString

Ответы [ 2 ]

0 голосов
/ 21 января 2020

Мне нужно было использовать <br>, чтобы поместить полученный ответ в тело письма. <p> создает новый PARAGRAPH, а <br> просто помещает его в следующую строку.

& "<br><b><u>Status:</u></b>"

дает:

& "
Статус:"&

Вместо: & "<p><b><u>Status:</u></b>"

Что дает:

&"

Статус:"

Спасибо за помощь!

0 голосов
/ 21 января 2020

Вам необходимо использовать форматированный HTML контент, чтобы применить нужные цвета и c:

Dim oApp As Object, oMail As Object

Set oApp = CreateObject("outlook.application")

Set oMail = oApp.createitem(0)

oMail.Display

oMail.htmlBody = "<h1>This is a heading</h1>" & _
                 "<p style='color:#F00'>Some red text</p>" & _
                 "<p><u>Underlined</u></p>" & _
                 "<p><b>Bold</b></p>" & _
                 "<p><i>Italic</i></p>"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...