由于一些不正当的原因,工作要求我打印 10,500 封电子邮件及其附件(约占电子邮件的 70%),通过展望 2010。我和您一样,对如此荒谬的低效率以及我们估计这将花费我们和全世界 55,000 张纸感到震惊。尽管如此,它还是会以手动方式(我们过去两天一直在这样做)或自动方式(请上帝帮助我们)进行。
这些需要按顺序排列,以便每封电子邮件都位于其相应附件的顶部,并按时间顺序打印。因此,电子邮件 1、附件 1、电子邮件 2、附件 2 等。附件可以是 Powerpoint、Excel、Word 文档,以及最麻烦的 zip 文件。
以下是我迄今为止尝试过的方法:
在 Outlook 中“选项”-->“打印选项”-->选择打印附件
将所有邮件转换为 .eml 文件并从文件夹中打印
使用第三方邮件插件(由 Sperrysoftware 提供)将所有电子邮件转换为 PDF 并导出到文件夹。获取此文件夹并按日期重新排序,然后打印 PDF。
这就是为什么到目前为止这些都不起作用的原因:
Outlook 的“打印附件”设置很少适用于包含宏的文档。最重要的是,它不适用于 zip 文件,只会忽略这些文件。
显然,.eml 文件不能直接打印或在邮件客户端之外读取。实际上我认为这仍然是我们最有希望的努力,因为它确实是以稳定格式表示的整个邮件文件,分离的,并且位于邮件客户端之外——这意味着它们是可行的。我似乎找不到第三方软件可以有效地让我将电子邮件及其各自的压缩和各种格式的附件转换为可打印的文件。如果您知道一个,我们也愿意在软件上花费超过 200 欧元。
这款软件一开始很有前途。但是宏经常出问题,而且它还会把我们公司的电子邮件签名识别为附件。
如果您能提供任何建议,这对我们将大有帮助。我们目前正在打开每封电子邮件及其各自的 3 - 4 个附件,并通过每个附件各自的打印对话框进行打印。这将花费我们五个人一个月的时间,因此您的意见将非常宝贵!
答案1
信息提取可以批量打印来自不同电子邮件源的电子邮件消息,还可以转换电子邮件格式。
- 它可以按时间顺序批量打印电子邮件及其附件。我们在最新版本中添加了根据您的要求解压缩和打印 zip 附件的功能。
- 它可以将 Outlook 电子邮件保存为 EML 文件
- 它可以将 Outlook 电子邮件保存为 PDF 文件
- 它可以下载消息 html 部分中链接的图像并将其包含在结果格式中(PDF 文件、打印机……)
为了打印附件,MsgExtract 依赖于 Windows Shell 打印关联,如果附件文件扩展名不存在关联,则会跳过该操作。
您可以在以下位置了解有关 MsgExtract 批量打印的更多信息:
http://docs.maildev.com/article/122-how-do-i-batch-print-email-messages-and-its-attachments
(免责声明,我是 MsgExtract 的作者)
答案2
这台机器上没有 Outlook,下周之前我都无法使用装有 Outlook 的 Windows 机器。但基本上,您需要执行以下操作:
Sub test()
Dim oFolder As outlook.folder
Dim oAttachment As outlook.attachment
Dim oMailItem As outlook.mailitem
Dim oItem As Object
set oFolder = 'get the folder you want to print from
Dim i As Integer
Dim j As Integer
For i = 1 To oFolder.items.Count
Set oMailItem = oFolder.items(i)
oMailItem.PrintOut
If oMailItem.attachments.Count > 0 Then
For j = 1 To oMailItem.Attachments.Count
'below you might need to change the attachment(j) to items(j)
Set oAttachment = oMailItem.attachment(j)
oAttachment.PrintOut
Next
End If
Next
End Sub
因此,它会在文件夹中查找电子邮件,打印它们并检查它们是否有附件,如果找到,也会打印它们。
正如我所说,我没有 Outlook,所以我无法测试这个。
不要使用实时数据!
如果我是你,我会新文件夹中的三封复制的电子邮件和测试一下在接触任何实时数据之前,请先查看它们。您可能需要查找如何set oFolder