プリンタのインクと紙を節約するために、一部のユーザーは、電子メールに添付されたすべての画像を、ページごとにXNUMXつの画像ではなく、XNUMXつのページにのみ印刷したいと考えています。 さて、この記事はそれを実現するための手段を共有します。
ご存知のとおり、画像の印刷はプリンタのインクをかなり浪費しています。 したがって、プリンタのインクと紙を節約するために、画像を別々のページに印刷するのではなく、同じページに多くの画像の添付ファイルを印刷する方がよい場合があります。 Outlookはそのような機能を提供していませんが、それでも次の方法でそれを実現できます。

Outlook電子メールのすべての画像添付ファイルをXNUMXページにのみ印刷する
- まず、Outlookアプリケーションを起動してください。
- 次に、Outlookウィンドウで、「Alt + F11」キーボタンをタップします。
- 次に、「Microsoft Visual Basic for Applications」ウィンドウが表示されますので、まず「Microsoft Word Object Library」を有効にする必要があります。
- その後、使用されていないモジュールを開く必要があります。
- 続いて、次のVBAコードをコピーしてこのモジュールに貼り付けます。
Sub PrintAllImageAttachmentsOnOnePage()
Dim objSourceMail As Outlook.MailItem
Dim objAttachment As Outlook.Attachment
Dim objTempMail As Outlook.MailItem
Dim objTempDocument As Word.Document
Dim objWordApp As Word.Application
Dim strImage As String
Dim objImage As Word.InlineShape
Select Case Outlook.Application.ActiveWindow.Class
Case olInspector
Set objSourceMail = ActiveInspector.currentItem
Case olExplorer
Set objSourceMail = ActiveExplorer.Selection.Item(1)
End Select
If Not (objSourceMail Is Nothing) Then
'Create a temp mail
Set objTempMail = Outlook.Application.CreateItem(olMailItem)
objTempMail.Display
Set objTempDocument = objTempMail.GetInspector.WordEditor
Set objWordApp = objTempDocument.Application
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
For Each objAttachment In objSourceMail.attachments
'Get the Image attachments, instead of inserted Images
If IsEmbedded(objAttachment) = False Then
Select Case LCase(objFileSystem.GetExtensionName(objAttachment.filename))
Case "jpg", "jpeg", "png", "bmp", "gif"
strImage = "E:\" & objAttachment.filename
objAttachment.SaveAsFile strImage
'Insert the images into the temp mail
Set objImage = objWordApp.Selection.InlineShapes.AddPicture(filename:=strImage, LinkToFile:=False, SaveWithDocument:=True)
objWordApp.Selection.TypeText Text:=" "
'shrink the images to insure that they are on one page
objImage.ScaleHeight = 20
objImage.ScaleWidth = 20
Kill strImage
End Select
End If
Next
objTempMail.PrintOut
objTempMail.Close olDiscard
End If
End Sub
Function IsEmbedded(objCurAttachment As Outlook.Attachment) As Boolean
Dim objPropertyAccessor As Outlook.propertyAccessor
Dim strProperty As String
Set objPropertyAccessor = objCurAttachment.propertyAccessor
strProperty = objPropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E")
If InStr(1, strProperty, "@") > 0 Then
IsEmbedded = True
Else
IsEmbedded = False
End If
End Function
- 後で、メーリングリストに戻ることができます。 写真の添付ファイルを印刷するメールを選択するか開きます。
- 次に、このマクロをトリガーします。 現在のマクロウィンドウで、「F5」キーを押すか、ツールバーの「実行」アイコンをクリックするだけです。
- 最後に、マクロの実行が終了すると、次のスクリーンショットのように、ソース電子メールのすべての画像添付ファイルがXNUMXページに印刷されます。
破損したOutlookファイルに対処する
Outlookに保存されるデータが増えるにつれ、Outlookファイルの脆弱性が増しています。 さまざまな内的および外的要因により、侵害される可能性があります。 また、Outlookの破損を予測することは困難です。 したがって、あなたができることは、Outlookの破損に遭遇したときに即座に効果的な救助を保証することです。 たとえば、あなたは専門を維持する必要があります PST修復 のようなツール DataNumen Outlook Repair 近くに。 それはそよ風のように損傷したファイルをスキャンして復元します。
著者紹介:
Shirley Zhangは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 回復します Sql Server と見通し修理ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com

