【发布时间】:2016-10-24 14:39:56
【问题描述】:
我想阻止 Outlook 将签名附加到任何新打开的 Outlook MailItem。使用 Outlook.CreateItemFromTemplate(TemplateName) 时,默认签名会自动附加到新的 MailItem。当使用附加到 Outlook 客户端的多个帐户时,签名通常是不需要的,或者只是错误的。更糟糕的是,许多 Outlook 方法会附加不需要的签名的更多重复副本。有可能附上一大堆。
打开模板时,附加的签名是保存模板名称时处于活动状态的帐户的默认值。它不是当前活动帐户的默认值。一个想法是暂时关闭相关帐户的签名并直接添加所需的签名,因为这将是解决问题的一个相当简单的方法。 有没有办法关闭特定帐户的签名?我找不到。
默认帐户的签名可以通过设置关闭
appWd.EmailOptions.EmailSignature.NewMessageSignature = vbNullString 也可以稍后恢复,但这无济于事。一种可能的解决方法是通过编程方式更改默认帐户,关闭默认帐户的签名,打开所需的 TemplateName,然后将所有内容恢复到原始状态。但是,它不起作用,因为:
- a) 我找不到以编程方式切换默认帐户的方法。这似乎只能通过单击用户界面来实现。
- b) 无论如何,它不会有任何区别,因为 尽管进行了更改,但仍会使用保存了 TemplateName 的帐户。
这个要求的基础是我需要使用 VBA 合并 Outlook 中现有 MailItems 的部分。目标是将多个项目的部分合并到一个新的 MailItem 中,以便转发到邮件列表。使用MailItem.GetInspector.WordEditor 有效地合并所有工作,我已经解决了与附件和嵌入图片相关的问题,但多个签名,相比之下,这似乎是一件简单的事情,却导致了一个问题。有没有办法关闭它们?在 WordEditor 或 HTML 中删除它们将非常困难,因为签名具有任意结构。
【问题讨论】:
-
您是否尝试使用 SendUsingAccount 切换您要发送的帐户?我可能是错的,但签名不是根据您发送的帐户生成的吗?
-
我试过了。它不起作用,至少在连接了 POP3 和 Exchange 帐户的系统上不起作用。