带用户输入的VBA代码的Outlook模板

时间:2019-05-22 19:53:49

标签: vba outlook outlook-vba

我希望我的Outlook电子邮件模板提示我输入,并用我的输入替换指定的字段。我该如何完成?例如,我的电子邮件将为:

你好[姓名]

,我想弹出一个框,在其中可以输入名称,并在整个电子邮件中显示该名称,以[name]代替

我不知道如何将VBA代码集成到模板中,任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我发现它可以很好地满足您的需求。以我的示例为例,通过在电子邮件的“收件人:”部分的模板中保存“#0#”,单击此模板,将提示您更改带有“电子邮件地址”问题的条目

Sub CommandButton1_Click()

Call OpenTemplate

结束子

Sub OpenTemplate()

Dim OutMail As Outlook.MailItem
Set OutMail = Application.CreateItemFromTemplate("Template Location")

On Error Resume Next
With OutMail
    .To = Replace(.To, "#0#", InputBox("Email Address"))
    .CC = ""
    .BCC = ""
    .Subject = Replace(.Subject, "#1#", InputBox("Prompt 1"))
    .Body = Replace(.Body, "#2#", InputBox("Prompt 2"))
    .Body = Replace(.Body, "#3#", InputBox("Prompt 3"))
    .Body = Replace(.Body, "#4#", InputBox("Prompt 4"))

    .Display
End With
On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing

结束子

但是我也想更进一步,无法解决。我想创建一些模板,这些模板对于多个占位符将具有相同的条目,但是我想不出一种方法,而不必单独输入每个模板。在此方面也将提供任何帮助