Outlook電子メールのすべての画像添付ファイルをXNUMXページにのみすばやく印刷する方法

今すぐ共有:

プリンタのインクと紙を節約するために、一部のユーザーは、電子メールに添付されたすべての画像を、ページごとにXNUMXつの画像ではなく、XNUMXつのページにのみ印刷したいと考えています。 さて、この記事はそれを実現するための手段を共有します。

ご存知のとおり、画像の印刷はプリンタのインクをかなり浪費しています。 したがって、プリンタのインクと紙を節約するために、画像を別々のページに印刷するのではなく、同じページに多くの画像の添付ファイルを印刷する方がよい場合があります。 Outlookはそのような機能を提供していませんが、それでも次の方法でそれを実現できます。

Outlook電子メールのすべての画像添付ファイルをXNUMXページにのみすばやく印刷する

Outlook電子メールのすべての画像添付ファイルをXNUMXページにのみ印刷する

  1. まず、Outlookアプリケーションを起動してください。
  2. 次に、Outlookウィンドウで、「Alt + F11」キーボタンをタップします。
  3. 次に、「Microsoft Visual Basic for Applications」ウィンドウが表示されますので、まず「Microsoft Word Object Library」を有効にする必要があります。
  4. その後、使用されていないモジュールを開く必要があります。
  5. 続いて、次の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

VBAコード-Outlook電子メールのすべての画像添付ファイルをXNUMXページにのみ印刷する

  1. 後で、メーリングリストに戻ることができます。 写真の添付ファイルを印刷するメールを選択するか開きます。
  2. 次に、このマクロをトリガーします。 現在のマクロウィンドウで、「F5」キーを押すか、ツールバーの「実行」アイコンをクリックするだけです。
  3. 最後に、マクロの実行が終了すると、次のスクリーンショットのように、ソース電子メールのすべての画像添付ファイルがXNUMXページに印刷されます。XNUMXページのみの画像

破損したOutlookファイルに対処する

Outlookに保存されるデータが増えるにつれ、Outlookファイルの脆弱性が増しています。 さまざまな内的および外的要因により、侵害される可能性があります。 また、Outlookの破損を予測することは困難です。 したがって、あなたができることは、Outlookの破損に遭遇したときに即座に効果的な救助を保証することです。 たとえば、あなたは専門を維持する必要があります PST修復 のようなツール DataNumen Outlook Repair 近くに。 それはそよ風のように損傷したファイルをスキャンして復元します。

著者紹介:

Shirley Zhangは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 回復します Sql Server と見通し修理ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com

今すぐ共有:

コメントは締め切りました。