Как сохранить сообщение электронной почты в виде изображения (JPG/TIFF) в Outlook?
Пробовали ли вы когда-нибудь сохранить сообщение электронной почты в Outlook в виде изображения — например, в формате JPG или TIFF? В этой статье мы покажем вам, как это сделать.
Сохранение сообщения электронной почты в формате изображения с помощью кода VBA
Сохранение сообщения электронной почты в формате изображения с помощью кода VBA
Выполните следующие действия, чтобы сохранить сообщение электронной почты в Outlook в виде изображения.
1. Выберите письмо, которое нужно сохранить в виде изображения, и одновременно нажмите клавиши Alt+F11, чтобы открыть окно Microsoft Visual Basic для приложений.
2. В окне Microsoft Visual Basic для приложений выберите пункт Вставка > UserForm. См. снимок экрана:

3. Создайте UserForm, как показано на снимке экрана ниже.

4. Выберите переключатель JPG и измените его имя на opbJPG в области Свойства слева.

5. Повторите описанный выше шаг 4, чтобы переименовать другой переключатель в opbTIFF. Также переименуйте кнопки команд ОК и Отмена соответственно в cdbOk и cdbCancel.
Примечание: Если область Свойства не отображается в окне Microsoft Visual Basic для приложений, нажмите клавишу 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 Sub 7. Выберите 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 Sub 9. Выберите пункт Сервис > Ссылки, установите флажок рядом с пунктом Библиотека объектов Microsoft PowerPoint и нажмите кнопку ОК. См. снимок экрана:

10. Нажмите клавишу F5, чтобы запустить код. Откроется диалоговое окно UserForm1. Выберите тип изображения и нажмите кнопку ОК. См. снимок экрана:

11. В диалоговом окне Выбор папки укажите папку для сохранения изображения и нажмите кнопку ОК.

12. Наконец, появится диалоговое окно Microsoft Outlook, информирующее об успешном завершении операции сохранения. Нажмите кнопку ОК.

Теперь выбранные письма успешно преобразованы в изображения формата JPG или TIFF и сохранены в указанной папке.
Связанные статьи:
- Как сохранить все вложения из нескольких писем в одну папку в Outlook?
- Как удалить все вложения из письма в Outlook?
Лучшие инструменты для повышения продуктивности в Office
Оцените совершенно новый Kutools для Outlook с 100+ потрясающими функциями!Нажмите, чтобы скачать прямо сейчас!
📧Автоматизация работы с электронной почтой: Автоответ (доступен для POP и IMAP) / Планирование отправки писем / Авто Копия/Скрытая копия по правилам при отправке писем / Автоматическое перенаправление (расширенное правило) / Автоматическое добавление приветствия / Автоматическое разделение писем с несколькими получателями на отдельные сообщения…
📨Управление электронной почтой: Отозвать письмо / Блокировка спама по теме и другим признакам / Удаление дубликатов писем / Расширенный поиск / Организация папок…
📁Продвинутая работа с вложениями: Пакетное сохранение / Пакетное отсоединение / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие…
🌟Волшебство интерфейса: 😊Еще больше красивых и стильных эмодзи / Напоминание о важных входящих письмах / Сворачивание Outlook вместо закрытия…
👍Чудеса одним щелчком: Ответить всем с вложениями / Защита от фишинговых писем / 🕘Отображение часового пояса: текущее время отправителя…
👩🏼🤝👩🏻Контакты и календарь: Пакетное добавление контактов из выбранных писем / Разделение группы контактов на отдельные группы / Удаление напоминания о дне рождения…
Используйте Kutools на вашем любимом языке — поддержка английского, испанского, немецкого, французского, китайского и более чем 40 других языков!


🚀 Скачать одним щелчком — Получите все надстройки для Office
Настоятельно рекомендуется: Kutools for Office (5 в 1)
Скачайте одним щелчком пять установщиковсразу —Kutools для Excel, Outlook, Word, PowerPointи Office Tab Pro.Нажмите, чтобы скачать прямо сейчас!
- ✅Удобство одним щелчком: Скачайте все пять установочных пакетов за одно действие.
- 🚀Готовы к любой задаче в Office: устанавливайте нужные надстройки именно тогда, когда они вам понадобятся.
- 🧰Входит в комплект: Kutools для Excel / Kutools для Outlook / Kutools для Word / Office Tab Pro / Kutools for PowerPoint