如何在Outlook中将邮件保存为图片格式(jpg/tiff)?
您是否曾经尝试过在Outlook中将电子邮件保存为jpg或tiff格式的图片?本文将向您展示一种解决此问题的方法。
使用VBA代码将电子邮件保存为图片格式
请按照以下步骤将电子邮件保存为Outlook中的图片格式。
1. 选择要保存为图片的电子邮件,然后同时按Alt + F11键以打开Microsoft Visual Basic for Applications窗口。
2. 在Microsoft Visual Basic for Applications 窗口中,请点击插入 > 用户窗体。参见截图:

3. 创建一个如下截图所示的用户窗体。

4. 选择jpg选项按钮,并将其名称更改为opbJPG(在左侧属性窗格中)。

5. 重复上述步骤4,将其他选项按钮重命名为opbTIFF。并将“确定”命令按钮和“取消”命令按钮分别重命名为cdbOk 和cdbCancel 。
注意:如果在Microsoft Visual Basic for Applications窗口中未显示属性窗格,请按F4键以显示该窗格。
6. 双击用户窗体上的任意空白处以打开代码窗口。用以下VBA脚本替换所有代码。然后关闭代码窗口。
VBA代码1:将电子邮件保存为图片
Option Explicit
'Update by Extendoffice 2018/3/5
Public xRet As Boolean
Private Sub cdbCancel_Click()
xRet = False
FrmPicType.Hide
End Sub
Private Sub cdbOk_Click()
xRet = True
FrmPicType.Hide
End Sub7. 选择UserForm1,并将其名称更改为FrmPicType (在属性窗格中),如下截图所示。

8. 点击插入 > 模块,然后将下面的VBA代码复制到模块窗口中。
VBA代码2:将电子邮件保存为图片
Public Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'Update by Extendoffice 2018/3/5
Sub ExportEmailAsImage()
Dim xMail As Outlook.MailItem
Dim xFileName, xFilePath, xWdDocPath As String
Dim xPPTApp As PowerPoint.Application
Dim xPresentation As PowerPoint.Presentation
Dim xPPTShape As PowerPoint.Shape
Dim xPicType As String
Dim xFileFormat As PpSaveAsFileType
On Error Resume Next
FrmPicType.Show
If FrmPicType.xRet Then
If FrmPicType.opbJPG.Value = True Then
xPicType = ".jpg"
xFileFormat = ppSaveAsJPG
ElseIf FrmPicType.opbTIFF.Value = True Then
xPicType = ".tiff"
xFileFormat = ppSaveAsTIF
End If
Else
Exit Sub
End If
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.BrowseForFolder(0, "Select a folder:", 0, 0)
If Not TypeName(xFolder) = "Nothing" Then
Set xFolderItem = xFolder.self
xFilePath = xFolderItem.Path & "\"
Else
xFilePath = ""
Exit Sub
End If
'ShellExecute 0, "Open", "POWERPNT.exe", "", "", 0
Set xPPTApp = New PowerPoint.Application
xPPTApp.Height = 0
xPPTApp.Width = 0
xPPTApp.WindowState = ppWindowMinimized
xPPTApp.Visible = msoFalse
For Each xMail In Outlook.Application.ActiveExplorer.Selection
xFileName = Replace(xMail.Subject, "/", " ")
xFileName = Replace(xFileName, "\", " ")
xFileName = Replace(xFileName, ":", "")
xFileName = Replace(xFileName, "?", " ")
xFileName = Replace(xFileName, Chr(34), " ")
xWdDocPath = Environ("Temp") & "\" & xFileName & ".doc"
xMail.SaveAs xWdDocPath, olDoc
Set xPresentation = xPPTApp.Presentations.Add
xPresentation.Application.WindowState = ppWindowMinimized
xPresentation.Application.Visible = msoFalse
With xPresentation
.PageSetup.SlideHeight = 900 '792
.PageSetup.SlideWidth = 612
.Slides.AddSlide 1, .SlideMaster.CustomLayouts(1)
End With
xPPTApp.WindowState = ppWindowMinimized
With xPresentation.Slides(1)
.Application.Visible = msoFalse
Set xPPTShape = .Shapes.AddOLEObject(0, 0, 612, 900, , xWdDocPath)
xPresentation.SaveAs xFilePath & xFileName & xPicType, xFileFormat, msoTrue
End With
xPresentation.Close
Next
xPPTApp.Quit
MsgBox "Mails has been successfully saved as picture", vbInformation + vbOKOnly
End Sub9. 点击工具 > 引用,勾选Microsoft PowerPoint对象库复选框,然后点击确定按钮。参见截图:

10. 按F5键运行代码。然后弹出UserForm1对话框,请选择一种图片类型并点击确定按钮。参见截图:

11. 在“浏览文件夹”对话框中,指定一个文件夹以保存图片,然后点击确定按钮。

12. 最后,会显示一个Microsoft Outlook对话框,告诉您保存已完成。请点击确定按钮。

现在,所选电子邮件已成功转换为jpg或tiff图片并保存到指定文件夹中。
相关文章:
最佳 Office 办公效率工具
重磅消息:Kutools for Outlook 推出免费版本!
体验全新 Kutools for Outlook 免费版,70 多个强大功能,永久免费使用!点击立即下载!
🤖 Kutools AI :利用先进的AI技术轻松处理邮件,包括答复、总结、优化、扩展、翻译和撰写邮件。
📧 邮件自动化:自动答复(支持POP和IMAP) /计划发送邮件 /发送邮件时根据规则自动抄送密送 / 自动转发(高级规则) / 自动添加问候语 / 自动将群发邮件拆分为单独邮件 ...
📨 邮件管理:撤回邮件 / 按主题等方式阻止诈骗邮件 / 删除重复邮件 / 高级搜索 / 整合文件夹 ...
📁 附件专家:批量保存 / 批量拆离 / 批量压缩 / 自动保存 / 自动拆离 / 自动压缩 ...
🌟 界面魔法:😊更多精美个性表情 /重要邮件来临时提醒您 / 最小化而非关闭 Outlook ...
👍 一键高效操作:带附件全部答复 /反钓鱼邮件 / 🕘显示发件人时区 ...
👩🏼🤝👩🏻 联系人与日历:从选中的邮件批量添加联系人 / 将联系人组拆分为多个独立组 / 移除生日提醒 ...
使用 Kutools,支持英语、西班牙语、德语、法语、中文及40 多种其他语言,满足您的语言偏好!
一键解锁 Kutools for Outlook。无需等待,立即下载,提升办公效率!