Я разработал макрос для пересылки электронной почты. В нижеприведенном коде написано форвардное письмо, добавляется некоторая информация в теле, сохраняется исходное содержимое в нижней части письма. Но единственная проблема заключается в том, что когда макрос пытается переслать электронное письмо, исходный формат теряется.VBA для отправки по электронной почте
Кроме того, по умолчанию он отображает мой идентификатор электронной почты как From Address. Вместо этого он должен быть «[email protected]». Не могли бы вы мне помочь?
Sub Forward_Email()
Set objOL = CreateObject("Outlook.Application")
Set objMsg = objOL.ActiveInspector.CurrentItem
Set objForward = objMsg.Forward
objForward.Recipients.Add "[email protected]"
objForward.CC = "[email protected]"
objOrignialBody = objForward.Body
Workbooks.Open Filename:= _
"C:\Users\desktop\Email Distribution Control File.xlsx"
Sheets("Incorrect Device Type").Select
EmailLastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
Cells.Find(What:="Subject", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
ActiveCell.Offset(1, 0).Activate
BodyofEmail = ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
For emailrange = 6 To EmailLastRow - 1
If ActiveCell.Row > EmailLastRow Then
GoTo DraftEmail
Else
End If
BodyofEmail = BodyofEmail & vbCrLf & ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
Next emailrange
DraftEmail:
objForward.Display
objForward.Body = BodyofEmail & vbCr & vbCr & vbCr & objOrignialBody
Какого формата заблудиться? Формат электронной почты (т. Е. Как Rich Text vs. HTML vs. Plain Text) или формат ячейки Excel (который вы не фиксируете в этом коде)? –
Привет, Дэвид, формат HTML теряется. Помогает ли вам эта информация? – user2341632
Попробуйте следующее: http://stackoverflow.com/questions/15758300/excel-vba-formatting-of-outlook-signature-is-gone –