有时,您可能不想将 Excel 工作表复制到电子邮件正文中,而是想插入工作表的屏幕截图。 因此,本文将展示 2 种获取它的方法。
许多用户希望导出特定 Excel 工作表的屏幕截图,然后将屏幕截图插入到 Outlook 电子邮件的消息正文中。 仅在屏幕截图中,无法更改单元格值。 即使收件人没有在他们的计算机上安装 MS Excel,也可以查看屏幕截图。
这可以通过2种方式实现。 第一个是通过内置功能 - “插入”>“屏幕截图”,在下面的方法一中详细介绍。第二个是使用一些脚本,如方法二所示。现在,继续阅读详细了解它们。
方法一:插入Excel窗口截图
- 首先,打开要插入电子邮件的 Excel 工作表。

- 然后,启动 Outlook 并创建一封新电子邮件。
- 接下来,在“消息”窗口中,切换到“插入”选项卡。
- 随后,单击“屏幕截图”按钮。
- 在“可用窗口”列表中,选择 Excel 工作表的屏幕截图。
- 将立即插入 Excel 工作表的屏幕截图。
- 现在,您可以随意裁剪屏幕截图。
方法二:用VBA复制Excel工作表截图
- 首先,打开 Excel 文件。
- 然后,按“Alt + F11”触发 Excel VBA 编辑器。
- 接下来,添加对“MS Outlook Object Library”和“MS Word 对象库rary” 根据 “如何添加对象库rary VBA 中的引用“。
- 之后,将以下 VBA 代码复制到项目或模块中。
Sub ExportInsert_ScreenshotOfSheet_Mail()
Dim objSheet As Excel.Worksheet
Dim objUsedRange As Excel.Range
Dim objOutlookApp As Outlook.Application
Dim objMail As Outlook.MailItem
Dim objMailDocument As Word.document
'Change "Sheets(1)" to the specific worksheet number
Set objSheet = ActiveWorkbook.Sheets(1)
Set objUsedRange = objSheet.UsedRange
'Copy the screenshot of the sheet
objUsedRange.CopyPicture xlScreen, xlPicture
Set objOutlookApp = CreateObject("Outlook.Application")
Set objMail = objOutlookApp.CreateItem(olMailItem)
objMail.Display
Set objMailDocument = objMail.GetInspector.WordEditor
'Paste the copied screenshot
objMailDocument.Range(0, 0).Paste
End Sub
- 稍后,按“F5”运行此宏。
- 随即,将显示一封新电子邮件。
- 在小对话框中,单击“允许”按钮。
- 最后,Excel 工作表的屏幕截图将插入到邮件正文中。
面对 Outlook 文件损坏时
如果您不小心下载了任何受病毒感染的附件,您的 Outlook 文件很可能会受到攻击,从而受到威胁。 在这种情况下,您必须首先运行杀毒软件来杀死病毒。 之后,您需要投资强大的第三方修复实用程序,例如 DataNumen Outlook Repair,这可以 修复PST 毫不费力地归档。
作者简介:
Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 恢复 mdf 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com




