使用VBA将其从Outlook导入到Excel时,是否可以从电子邮件正文中删除签名?

我想知道是否有可能从电子邮件正文删除签名时,将该电子邮件导入到Excel中?

我尝试了Tony Dallimore提出的这个早期发布的主题的解决scheme,将Outlook中的电子邮件导入到excel中。

不幸的是,这几乎是不可能的,除非你可以期望一些独特的文本,可以表示签名开始的地方,所以你可以把它删除。 在撰写模式下,可以使用<span style='mso-bookmark:_MailAutoSig'>块附上任何签名。 但是,当电子邮件发送时,该块将被删除,并且不会出现在收到的副本中。

Eric的build议只有在基于HTML的消息的情况下才有意义。

但用户可能更喜欢用纯文本撰写项目。 在这种情况下,build议的search书签的方式将失败。 您需要知道签名内容并在正文中进行search。

默认情况下,您可以在以下位置findSignatures文件夹;

Windows XP

  • C:\ Documents and Settings \%username%\ Application Data \ Microsoft \ Signatures

Windows 8,Windows 7和Windows Vista

  • C:\ Users \%username%\ AppData \ Roaming \ Microsoft \ Signatures查找以下文件和文件夹;

[signature_name] .htm – 创buildHTML邮件时使用此文件。

[signature_name] .rtf – 创buildRich Text邮件时使用此文件。

[signature_name] .txt – 创build纯文本消息时使用此文件。

[signature_name] _files – 此文件夹在Outlook中用于存储用于签名的支持文件,如格式化,图像和/或名片(vcf文件)。

因此,您可以检查相应的签名文件的文件夹,阅读文件内容,并根据所使用的BodyFormat尝试在邮件正文中查找此类文本。

Outlook对象模型提供了三种处理项目主体的主要方法:

  1. 正文 – 表示Outlook项目的明文正文的string。
  2. HTMLBody – 表示指定项目的HTML正文的string。
  3. Word编辑器 – 正在显示的消息的Microsoft Word文档对象模型。 Inspector类的WordEditor属性返回Word对象模型中的Document类的实例,您可以使用该对象设置消息正文。

你可以在第17章:使用物品主体中阅读更多关于这些方面的内容。 我们决定用哪种方式来select自定义邮件正文中的签名。