2016-09-29 17 views
0

私はこのコードをMS Accessで使用して、保存されたHTML Outlookテンプレートを開きます。このコードでは、電子メールの本文で「SALUTATION」が検索され、フォームの制御データに置き換えられます。コードがOutlook電子メールテンプレートの書式設定を失う

それはうまくいくが、書式設定されたテキスト、複数のリンク、いくつかの画像を含む電子メールのフォーマットは失われる。

元の書式を維持するためにコードを変更するにはどうすればよいですか?

Private Sub Command139_Click() 
Dim myOlApp As Outlook.Application 
Dim MyItem As Outlook.MailItem 
Dim value As String 
    value = Me.Salutation & " " & Me.LastName 
     Set myOlApp = CreateObject("Outlook.Application") 
    Set MyItem = myOlApp.CreateItemFromTemplate("C:\Users\Meiaer\AppData\Roaming\Microsoft\Templates\ELMOVM.oft") 
     MyItem.Display 
    With MyItem 
     .To = Me.EMAIL_ADDRESS 
     MyItem.Body = Replace(MyItem.Body, "SALUTATION", value) 
    End With 
Set MyItem = Nothing 
Set myOlApp = Nothing 
End Sub 

は、あなたが(メール本文の平文表現です)MyItem.HTMLBody、ないMyItem.Bodyを編集する必要があなたに

答えて

0

ありがとうございます。 「をMyItem.HTMLBody =「、(MyItem.Bodyを交換しSALUTATION:

が、これは最終的にそれをfoxed何MyItem.HTMLBody =置き換え(MyItem.HTMLBody、 "SALUTATION"、値)「私が試しているhttps://technet.microsoft.com/en-us/library/ff868941(v=office.14).aspx

+0

を参照してください。 "、値) ' と ' MyItem.HTMLBody = Replace(MyItem.HTMLBody、" SALUTATION "、value) ' しかし、私は' MyItem.HTMLBody = Replace(MyItem.HTMLBody、" SALUTATION "、value ) ' –

+0

@UbuWannaBe:価値がある読書:[VBAコードのデバッグ](http://www.cpearson.com/excel/DebuggingVBA.aspx)。 - そして答えがあなたの問題を解決したなら、あなたはそれを受け入れることができます(これは解決されたものとして質問もマークします)。 – Andre

関連する問題