Страницы: 1
RSS
Вставка подписи в сообщение Outlook
 
Уважаемые форумчане!
Помогите разобраться!
Есть макрос создающий сообщения для Outlook, но есть проблема в тексте сообщения.
Мне необходимо, что бы текст сообщения был в том виде в каком он находится в ячейке Excel (с переносом по строкам) и при этом была прикреплена подпись. У меня же получается либо одно, либо второе.)))

Код
Sub Отправка()
Dim OutlookApp As Object, SM As Object

Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem)

With SM
    .Display
    .To = "asd@asd.ru"
    .Subject = "тема"
    .HTMLBody = Range("A1").Value & .HTMLBody ' в этом варианте есть подпись и текст из ячейки, но в одну строку
    '.body =  Range("A1").Value ' в этом варианте текст как в ячейке, но нет подписи
End With
Set SM = Nothing 
Set OutlookApp = Nothing 
End Sub 
 
Доброе время суток
Попробуйте
Код
.HTMLBody = Range("A1").Value & "<p>&nbsp;</p>" & .HTMLBody

Успехов.
Изменено: Андрей VG - 05.09.2015 19:45:57
 
Извиняюсь, не уловил момент
Цитата
johnnie walker написал: (с переносом по строкам
Код
.HTMLBody = "<p>" & Replace$(Range("A1").Value, vbLf, "<br>") & "</p>" & .HTMLBody
 
Спасибо, работает!
Насколько я понял здесь уже пошла HTML разметка? и еще вопрос - возможно ли менять шрифт и его размеры?
Изменено: johnnie walker - 05.09.2015 20:03:59
 
Цитата
johnnie walker написал: здесь уже пошла HTML разметка?
Естественно, вы же используете HTMLBody.
Цитата
возможно ли менять шрифт и его размеры?
Можно, хотя смотря что вы под этим подразумеваете
можно для абзаца содержимого ячейки прописать
Код
"<p style='font-name:Times New Roman;font-size:12pt'>"

А если выводить уже настроенное форматирование, тогда потребуется содержимое минимум 2-х ячеек. Один из немногих случаев в программировании под Excel, когда требуется выделение.
Изменено: Андрей VG - 05.09.2015 20:37:08
 
Цитата
Андрей VG написал:
Можно, хотя смотря что вы под этим подразумеваете
можно для абзаца содержимого ячейки прописать
С этого момента по-подробнее ))
Например  я хочу, что бы весь текст сообщения был Times New Roman 12, куда необходимо вставлять Ваш код?
 
Можно.
Код
 <span style='font-size:.8em;font-family:arial;'>arial</span>
 <span style='font-size:1.2em;font-family:Times New Roman;'>Times New Roman</span>
 <span style='font-size:2.0em;font-family:Courier New;'>Courier New</span>
 <span style='font-size:2.5em;font-family:Calibri;'>Calibri</span>
Изменено: Doober - 05.09.2015 20:48:40
 
Спасибо, но куда надо вставить Ваш код??
 
бляха думал пиво порченое а тутjohnnie walker, переименовался
Лень двигатель прогресса, доказано!!!
 
Сергей, в код
Код
.HTMLBody = "<p style='font-family:Times New Roman;font-size:12pt'>" & Replace$(Range("A1").Value, vbLf, "<br>") & "</p>" & .HTMLBody
.
Doober, спасибо большое за поправку - давно стили не "мучал", как то последние лет 10 ни к чему  :(
Страницы: 1
Наверх