How to save email message as picture format (jpg/tiff) in outlook?
Have you ever tried to save an email message as a picture such as jpg or tiff picture in Outlook? This article will show you a method to solve this problem.
Office Tab: Enable Tabbed Editing and Browsing in Office, Just Like Chrome, Firefox, IE 8/9/10.
Classic Menu: Bring Old Menus and Toolbars Back to Office 2007, 2010, 2013, 2016 and 2019.
Please do as follows to save an email message as picture format in Outlook.
1. Select an email you will save as picture, and then press the Alt + F11 keys simultaneously to open the Microsoft Visual Basic for Applications window.
2. In the Microsoft Visual Basic for Applications window, please click Insert > UserForm. See screenshot:
3. Create a Userform as below screenshot shown.
4. Select the jpg Option button, and change its name to opbJPG in the left Properties pane.
5. Repeat the above step 4 to rename the other options button as opbTIFF. And rename the OK command button and the Cancel command button as cdbOk and cdbCancel separately.
Note: If the Properties pane does not show in the Microsoft Visual Basic for Applications window, please click the F4 key to bring up the pane.
6. Double-click on any blank space on the userform to open the Code window. Replace all code with the following VBA script. And then close the Code window.
VBA code 1: Save email message as picture
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. Select the UserForm1 and change its name to FrmPicType in the Properties pane as below screenshot shown.
8. Click Insert > Module, and then copy the below VBA code into the Module window.
VBA code 2: Save email message as picture
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. Click Tools > References, check the Microsoft PowerPoint Object Library box and then click the OK button. See screenshot:
10. Press the F5 key to run the code. Then the UserForm1 dialog box pops up, please select a picture type and click the OK button. See screenshot:
11. In the Browse For Folder dialog box, specify a folder to save the picture, and then click the OK button.
12. Finally, a Microsoft Outlook dialog box will display to tell you about the completion of the saving. Please click the OK button.
Now the selected emails are converted to a jpg or tiff picture and saved into a specified folder successfully.
- How to save all attachments from multiple emails to folder in Outlook?
- How to remove all attachments from email in Outlook?
Recommended Productivity Tools
- Complicated and repeated operations can be done a one-time processing in seconds.
- Forward multiple emails individually with one-click, and auto forward by rules.
- Auto CC/BCC every sending email and easy for customizing rules, and auto reply without requiring exchange server.
- Powerful junk emails filter, remove duplicate emails, reply with attachment, bunch of one-click operations, and so on...
- 60-day unlimited free trial. 60-day money back guarantee. 2 years free upgrade and support. Buy once, use forever.