Ana içeriğe atla

Outlook'ta bir / birden çok e-postadaki tüm ekleri nasıl yazdırabilirim?

Bildiğiniz gibi, yalnızca üstbilgi, gövde gibi e-posta içeriğini, fileto > Print Microsoft Outlook'ta, ancak ekleri yazdırmayın. Burada, seçilen bir e-postadaki tüm eklerin Microsoft Outlook'ta nasıl kolayca yazdırılacağını göstereceğiz.


Tek bir e-posta iletisindeki tüm ekleri tek tek yazdırın

Microsoft Outlook bize sağlar Hızlı Yazdır bir e-posta mesajındaki ekleri tek tek yazdırmanıza yardımcı olabilecek özellik.

1. Eklerini daha sonra yazdıracağınız e-posta mesajını seçin.

2. Bu e-postadaki bir eke tıklayın.

3. Tıkla Hızlı Yazdır düğmesi İşlemler üzerinde grup Ekler sekmesi.

Not: Ek Araçları e-postalardaki ekleri tıklayana kadar etkinleştirilmeyecek.

4. Bir Posta Eki Açılıyor iletişim kutusu çıkıyor ve lütfen Açılış düğmesine basın.

Lütfen bu adımın seçilen eki açacağını ve bu seçili eki aynı anda yazdıracağını unutmayın.

Bu e-postadaki diğer ekleri yazdırmak için lütfen Adım 2 ila Adım 4'ü tekrarlayın.

Outlook'ta birden çok e-postadaki tüm ekleri hızla kaydedin / dışa aktarın

Normalde bir e-postadaki ekleri kaydedebiliriz. Ek Araçları ve uygulamak Tüm Ekleri Kaydet Outlook'taki özellik. Ancak, ekleri birden çok e-postadan veya Outlook'taki tüm posta klasöründen kaydediyorsanız ne olur? Outlook için Kutools'u deneyin Tümünü kaydet (Ekler) özelliği.


ekleri birden çok e-postaya kaydet kto9

Tüm ekleri tek bir e-posta mesajında ​​toplu olarak yazdırın

Bir e-posta mesajında ​​çok sayıda ek varsa, bunları tek tek yazdırmak zaman alacaktır. Ve aşağıdaki yöntem, seçilen bir e-posta mesajındaki tüm ekleri kolayca toplu yazdırma işleminde size yol gösterecektir.

1. Eklerini daha sonra yazdıracağınız e-posta mesajını seçin.

2. Outlook 2010 veya sonraki sürümlerde, lütfen fileto > Print > Yazdırma Seçenekleri. Aşağıdaki ekran görüntüsüne bakın:

3. Yazdır iletişim kutusunda, lütfen Ekli dosyaları yazdırın. Ekler yalnızca varsayılan yazıcıya yazdırılır seçeneği Baskı seçenekleri Bölüm.

4. Tıkla Print düğmesine basın.

5. Posta Ekini Açma iletişim kutusunu açarken, lütfen Açılış devam etmek için düğmesine basın. (not: Bu iletişim kutusu, her ek için ayrı olarak açılacaktır.)

Şimdi bu seçilen e-posta mesajındaki tüm ekler bir kerede yazdırılacaktır.


Birden çok seçili e-postadaki tüm ekleri ve resimleri toplu olarak yazdırın

Outlook'ta ileti gövdesindeki tüm resimlerin yanı sıra birden çok e-postadaki tüm ekleri yazdırmak için, bir VBA kodu uygulamak için lütfen aşağıdaki adımları izleyin.

1. Posta listesinde lütfen bekleyin Ctrl or vardiya Eklerini yazdıracağınız birden çok e-postayı seçmek için tuşlar.

2. Basın Ara Toplam + F11 Microsoft Visual Basic for Applications penceresini açmak için anahtarları birlikte kullanın.

3. Uygulamalar için Microsoft Visual Basic penceresinde, Tools > Referanslar. Ve sonra kontrol edin Microsoft Komut Dosyası Çalışma Zamanı seçeneği aşağıda gösterildiği gibidir. Bittiğinde, tıklayın OK.

4. tıklayın Ekle > modülve ardından yeni modül penceresine VBA kodunun altına yapıştırın.

VBA: Tüm ekleri birden çok Outlook e-postasında yazdırın

Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/03
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        xFilePath = xTempFldPath & "\" & xAttachment.FileName
        xAttachment.SaveAsFile (xFilePath)
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

5. Basın F5 anahtarı veya tıklayın koşmak Bu VBA kodunu çalıştırmak için düğme. Şimdi seçilen e-postalardaki tüm eklerin ve mesaj gövdesindeki resimlerin yazdırıldığını göreceksiniz.

Not:

  • Her görüntü, yazdırma onayınızı istemek için bir açılır iletişim kutusu açacaktır. Diğer dosya türleri doğrudan yazdırılırken.
  • Bir e-posta imzasında resimler varsa, bunlar da açılır iletişim kutuları açar.
  • Eğer alırsanız Bu projedeki makrolar devre dışı hata, lütfen bu öğreticiyi kontrol edin: Outlook'ta Makrolar Nasıl Etkinleştirilir ve Devre Dışı Bırakılır?

Gövdedeki resimler hariç, seçilen birden çok e-postadaki tüm ekleri toplu olarak yazdırın

Yalnızca birden çok e-postadaki ekleri, ancak Outlook'ta ileti gövdesindeki resimleri yazdırmak için, lütfen bir VBA kodu uygulamak için aşağıdaki adımları izleyin.

1. Posta listesinde lütfen bekleyin Ctrl or vardiya Eklerini yazdıracağınız birden çok e-postayı seçmek için tuşlar.

2. Basın Ara Toplam + F11 Microsoft Visual Basic for Applications penceresini açmak için anahtarları birlikte kullanın.

3. Uygulamalar için Microsoft Visual Basic penceresinde, Tools > Referanslar. Ve sonra kontrol edin Microsoft Komut Dosyası Çalışma Zamanı seçeneği aşağıda gösterildiği gibidir. Bittiğinde, tıklayın OK.

4. tıklayın Ekle > modülve ardından yeni modül penceresine VBA kodunun altına yapıştırın.

VBA: Tüm ekleri birden çok Outlook e-postasında yazdırın

Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/05
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        If IsEmbeddedAttachment(xAttachment) = False Then
          xFilePath = xTempFldPath & "\" & xAttachment.FileName
          xAttachment.SaveAsFile (xFilePath)
          Debug.Print xFilePath
        End If
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
    xHtml = xItem.HTMLBody
    xID = "cid:" & xCid
    If InStr(xHtml, xID) > 0 Then
        IsEmbeddedAttachment = True
    End If
End If
End Function

5. Basın F5 anahtarı veya tıklayın koşmak Bu VBA kodunu çalıştırmak için düğme. Şimdi, seçilen e-postalardaki tüm eklerin yazdırıldığını göreceksiniz.

Not:

  • Eklenen her görüntü, sizden yazdırma onayını istemek için bir açılır iletişim kutusu açacaktır. Diğer dosya türleri doğrudan yazdırılırken.
  • Mesaj gövdesindeki resimler yazdırılmayacaktır.
  • Eğer alırsanız Bu projedeki makrolar devre dışı hata, lütfen bu öğreticiyi kontrol edin: Outlook'ta Makrolar Nasıl Etkinleştirilir ve Devre Dışı Bırakılır?

 


Demo: Outlook e-postasındaki eklerden birini veya tümünü yazdırın


Bahşiş: Bu videoda, Kutools sekme tarafından eklendi Outlook için Kutools. İhtiyacınız olursa lütfen tıklayın okuyun 60 günlük ücretsiz deneme sürümüne sahip olmak için sınırlama olmaksızın!


En İyi Ofis Üretkenlik Araçları

Outlook için Kutools - Outlook'unuzu Güçlendirecek 100'den Fazla Güçlü Özellik

🤖 AI Posta Yardımcısı: Yapay zeka büyüsüyle anında profesyonel e-postalar: tek tıkla dahice yanıtlar, mükemmel ton, çok dilli ustalık. E-posta göndermeyi zahmetsizce dönüştürün! ...

???? E-posta Otomasyonu: Ofis Dışında (POP ve IMAP için kullanılabilir)  /  E-posta Gönderimini Planla  /  E-posta Gönderirken Kurallara Göre Otomatik CC/BCC  /  Otomatik İletme (Gelişmiş Kurallar)   /  Otomatik Karşılama Ekleme   /  Çok Alıcılı E-postaları Otomatik Olarak Bireysel Mesajlara Bölün ...

📨 E-posta Yönetimi: E-postaları Kolayca Geri Çağırın  /  Dolandırıcılık E-postalarını Konulara ve Diğerlerine Göre Engelleyin  /  Yinelenen E-postaları Silin  /  gelişmiş Arama  /  Klasörleri Birleştir ...

📁 Ekler ProToplu Kaydetme  /  Toplu Ayır  /  Toplu Sıkıştırma  /  Otomatik kaydet   /  Otomatik Ayır  /  Otomatik Sıkıştır ...

🌟 Arayüz Büyüsü: 😊Daha Fazla Güzel ve Havalı Emoji   /  Sekmeli Görünümlerle Outlook Verimliliğinizi Artırın  /  Outlook'u Kapatmak Yerine Küçültün ...

👍 Tek Tıklamayla Harikalar: Tümünü Gelen Eklerle Yanıtla  /   Kimlik Avına Karşı E-postalar  /  🕘Gönderenin Saat Dilimini Göster ...

👩🏼‍🤝‍👩🏻 Kişiler ve Takvim: Seçilen E-postalardan Toplu Kişi Ekleme  /  Kişi Grubunu Bireysel Gruplara Bölme  /  Doğum Günü Hatırlatıcılarını Kaldır ...

üzerinde 100 Özellikler Keşfinizi Bekleyin! Daha Fazlasını Keşfetmek İçin Buraya Tıklayın.

 

 

Comments (24)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Is it possible to specify a network printer instead of always printing with the standard printer?
This comment was minimized by the moderator on the site
Dear all,

I had tried the VBA and the code runs but many popups are opening on screen to print images from the mail signature (apparently this is considered an attachment). Anyone knows how to solve it?

S.
This comment was minimized by the moderator on the site
If you don't want to print pictures in the body of a message, please use the code below:
Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/05
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        If IsEmbeddedAttachment(xAttachment) = False Then
          xFilePath = xTempFldPath & "\" & xAttachment.FileName
          xAttachment.SaveAsFile (xFilePath)
          Debug.Print xFilePath
        End If
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
    xHtml = xItem.HTMLBody
    xID = "cid:" & xCid
    If InStr(xHtml, xID) > 0 Then
        IsEmbeddedAttachment = True
    End If
End If
End Function
This comment was minimized by the moderator on the site
Dear Amanda,

Thank you for the code. It worked!

S.
This comment was minimized by the moderator on the site
Hi there,

Sorry that printing images will bring up popups. You will have to confirm each to download all the images. If you don't need to print images, please click Cancel.

Amanda
This comment was minimized by the moderator on the site
I am using Microsoft 365 and this worked after deleting line 9. Thanks! This has saved a bit of time for me.
Rated 5 out of 5
This comment was minimized by the moderator on the site
hallo, ich möchte nur den Anhang der Mails von der angegebenen Adresse senden, wie kann ich das machen, danke
This comment was minimized by the moderator on the site
Vielen, vielen Dank dafür! Hat uns enorm viel Arbeit erspart.Auch ich musste - wie bereits in den Kommentaren geschrieben - die neunte Zeile "Dim xAttachment As Outlook.Attachment On Error Resume Next" entfernen, dann lief der Code einfandfrei durch.
This comment was minimized by the moderator on the site
Hi, this worked fine for me yesterday but now it is saying 'the macros in this project are disabled' Any advice how to enable them? 
This comment was minimized by the moderator on the site
This comment was minimized by the moderator on the site
on line 9 , removing "On Error Resume Next" worked for me.
This comment was minimized by the moderator on the site
Hi everyone, we updated the VBA code in the tutorial on 2022/08/03. If you still need to print all attachments, please check the new code. 😊
This comment was minimized by the moderator on the site
Hi, I have been using this shortcut for a few weeks now, printing all attachments from multiple emails at once, and I have recently been having to remove line 9 as Nilanka said, which has been working, but this no longer works. Im getting the warning box saying the macros in this project are disabled.....and so on... if someone has a solution to make this work as it has been prior to now, please lmk, as i am selecting about 60 emails all containing attachments to print. Thanks
This comment was minimized by the moderator on the site
This comment was minimized by the moderator on the site
Thank you 
This comment was minimized by the moderator on the site
yes this just worked for me as well. Thank you!
This comment was minimized by the moderator on the site
the VBA code gives syntax is error
This comment was minimized by the moderator on the site
if a pdf has the same name the macro prints just one pdf, how can i change the code in order to modify the pdf name?
This comment was minimized by the moderator on the site
if you want to print all attachments together in 1 email here's what you do. first make a folder on your desktop....I named mine "print". go to the email with the attachments....highlight all of the attachments, right click, save all attachments to the print folder. Open the print folder.....highlight all of them.....right click.....print.



now if only I could figure out how to print all the attachments in 200 emails without opening each one and printing it.
This comment was minimized by the moderator on the site
Kutools for Outlook's Detach All (Attachments) feature can help you download all attachments from multiple emails with several clicks! https://www.extendoffice.com/product/kutools-for-outlook/outlook-detach-attachments.html
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations