Чтобы создать многоуровневый список, вы можете просто создать еще один <ul>
, вложенный под один из ваших <li>
элементов. Вы можете повозиться с HTML здесь:
http://w3schools.com/code/tryit.asp?filename=G3UBZA6VM2WS
Чтобы контролировать стиль элемента списка для отдельного элемента <li>
, укажите его type
атрибут `.
Чтобы установить стиль элемента списка для всех элементов в списке, укажите атрибут style
с соответствующим css, например ::
"<ul style='list-style-type:disc'>"
Обратите внимание на использование одинарных кавычек в строке в кавычках :)
Наконец, и теперь я подозреваю, что это была ваша проблема все время (стиль диска, кажется, по умолчанию в Outlook, поэтому вам, вероятно, не нужно указывать как таковой):
Вы не можете смешивать .Body
и .HTMLBody
. Вам нужно использовать один или другой. Если вы используете .Body
, электронное письмо будет иметь обычный текст и не будет принимать или отображать HTML. Поэтому вы должны вместо этого преобразовать все ваши .Body
назначения в соответствующий .HTMLBody
. Не проверено, но должно быть что-то вроде этого:
With objEmail
.To = "abc@xyz.com"
.Subject = "TEST1: May 2019 Budget"
.HTMLBody = "Kurt,"
.HTMLBody = .HTMLBody & "<br>"
.HTMLBody = .HTMLBody & "<p>The potential " & MonthName(Month(ActiveSheet.Range("A2"))) & " invoices are below.</p>"
.HTMLBody = .HTMLBody & "<br>"
For i = 1 To CaseCount
If ActiveSheet.Cells(i + 5, 4).Value = "Yes" Then
.HTMLBody = .HTMLBody & "<ul style='list-style-type:disc;'>" & "<li>" & ActiveSheet.Cells(i + 5, 2).Value & " - " & Format(ActiveSheet.Cells(i + 5, 6).Value, "Currency") & " (" & Format(ActiveSheet.Cells(i + 5, 8).Value, "Currency") & " without budget or invoicing)." & "</li>" & "<ul>" & "<li>" & "Last billed " & ActiveSheet.Cells(i + 5, 10) & "." & "</li>" & "</ul>" & "</ul>"
End If
Next i
.HTMLBody = .HTMLBody & "<br><br>"
.HTMLBody = .HTMLBody & "<p>" & "Thank you," & "</p>"
.HTMLBody = .HTMLBody & "<p>" & "Karen" & "</p>"
.Display
End With