2017-07-11 11 views
0

私がしますマクロを作成したいと思いますよユーザーフォームのデータに基づいて電子メールテンプレートを作成します情報がちょうどuserformに書かれているVBA Outlookが

これを行うには、Wordのようなブックマークを使用できるかどうか疑問に思っていました。ブックマーク付きのメールテンプレートを作成し、userformのvalidation_click()イベントで置き換えることができます。

あなたはあなたの助け

+0

ユニークなプレースホルダを使用してください。https://stackoverflow.com/questions/20130422/vb-outlook-macro-how-to-put-variable-fields-in-an-email-template – niton

答えて

0

をいただき、ありがとうございます(彼らは「[bookmark1]」そのように表示されません)私は、Web上の任意の例を見つけることができませんし、ブックマークは、Wordでのように動作していないようですOutlookでテンプレートを作成することを検討することがあります。あなたは(新しい項目が作成されたとき)は、後に交換することができますプレースホルダを定義することができるテンプレートで

Sub CreateTemplate() 
    Dim MyItem As Outlook.MailItem 

    Set MyItem = Application.CreateItem(olMailItem) 
    MyItem.Subject = "Status Report" 
    MyItem.To = "Eugene Astafiev" 
    MyItem.Display 
    MyItem.SaveAs Environ("HOMEPATH") &; "\My Documents\statusrep.oft", OlSaveAsType.olTemplate 
End Sub 

:MailItemのSaveAsメソッドは、ディスク上のテンプレートとしてアイテムを保存することができます。 ApplicationクラスのCreateItemFromTemplateメソッドは、Outlookテンプレート(.oft)から新しいMicrosoft Outlookアイテムを作成し、新しいアイテムを返します。

Sub CreateFromTemplate() 
Dim MyItem As Outlook.MailItem 

Set MyItem = Application.CreateItemFromTemplate("C:\statusrep.oft", _ 
    Application.Session.GetDefaultFolder(olFolderDrafts)) 
MyItem.Save 
End Sub 

あなたはHow To: Create a new Outlook message based on a template記事は参考になりましかもしれません。

P.S. OutlookはWordを電子メールエディタとして使用します。したがって、アイテム本体を扱うときにWordオブジェクトモデルを使用できます。詳細については、Chapter 17: Working with Item Bodiesを参照してください。

関連する問題