Excel VBA: Диапазон ячеек листа отправить почтой?
Формулировка задачи:
Здравствуйте.
В интернете много примеров, где происходит отправка письма, с простым текстом.
Как бы мне отправить в качестве тела письма не просто текст, а например, табличку, с границами и определённой заливкой?
Т.е. грубо говоря "
Я в курсе, что есть свойство
Есть ли какой-то более изящный или может "коробочный" способ вложить форматированную табличку в письмо?
Совсем недавно мне подсказали на этом форуме очень ценный прием, при помощи которого можно сохранять форматирование и границы диапазонов
Может быть есть какой то подобный элемент, который хранит HTML-вариант диапазона? Или я много хочу? ))
В интернете много примеров, где происходит отправка письма, с простым текстом.
Как бы мне отправить в качестве тела письма не просто текст, а например, табличку, с границами и определённой заливкой?
Т.е. грубо говоря "
Range
"Я в курсе, что есть свойство
.HTMLBody
, но это слишком затратно, каждую ячейку "причесывать" HTML-тегами, я просто замучаюсь.Есть ли какой-то более изящный или может "коробочный" способ вложить форматированную табличку в письмо?
Совсем недавно мне подсказали на этом форуме очень ценный прием, при помощи которого можно сохранять форматирование и границы диапазонов
Range("zzz").Value(11)
Кто бы догадывался, что Value - это массив, а 11-ый элемент, это XML-описание диапазона?!Может быть есть какой то подобный элемент, который хранит HTML-вариант диапазона? Или я много хочу? ))
Решение задачи: «Excel VBA: Диапазон ячеек листа отправить почтой?»
textual
Листинг программы
'Отправка заданного диапазона почтой
Sub Send_Mail(Address As String)
Dim AWorksheet As Worksheet
Dim sndRange As Range
Dim rng As Range
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set sndRange = Range(Address)
Set AWorksheet = ActiveSheet
With sndRange
.Parent.Select
Set rng = ActiveCell
.Select
ActiveWorkbook.EnvelopeVisible = True
With .Parent.MailEnvelope
.Introduction = "Тема письма"
With .Item
.To = "user@server.ru"
.CC = ""
.BCC = ""
.Subject = "Таблица с оформлением"
.Send
End With
End With
rng.Select
End With
AWorksheet.Select
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
ActiveWorkbook.EnvelopeVisible = False
End Sub