Come stampare tutti gli allegati in una o più email in Outlook?
Come sapete, quando si clicca su File > Stampa in Microsoft Outlook, verrà stampato solo il contenuto dell'email, come intestazione e corpo, ma non gli allegati. Qui vi mostreremo come stampare facilmente tutti gli allegati di un'email selezionata in Microsoft Outlook.
- Stampa tutti gli allegati in un messaggio email uno per uno
- Stampa in batch tutti gli allegati in un messaggio email
- Stampa in batch tutti gli allegati e le immagini in più email selezionate
- Stampa in batch tutti gli allegati in più email selezionate, escludendo le immagini nel corpo
Stampa tutti gli allegati in un messaggio email uno per uno
Microsoft Outlook ci fornisce la funzione di Stampa Rapida, che può aiutarti a stampare gli allegati di un messaggio email uno per uno.
1. Seleziona il messaggio email i cui allegati vuoi stampare successivamente.
2. Clicca su un allegato in questa email.

3. Clicca sul pulsante Stampa Rapida nel gruppo Azioni sulla scheda Allegati.

Nota: lo Strumenti allegati non verrà attivato finché non clicchi sugli allegati nelle email.
4. Apparirà una finestra di dialogo Apertura Allegato Email, e clicca sul pulsante Apri .

Si noti che questo passaggio aprirà l'allegato selezionato e allo stesso tempo stamperà l'allegato selezionato.
Per stampare altri allegati in questa email, ripetere i passaggi dal 2 al 4.
Salvataggio/esportazione rapida di tutti gli allegati da più email in Outlook
Normalmente possiamo salvare gli allegati da una singola email attivando Strumenti allegati e applicando la funzione Salva tutti gli allegati in Outlook. Ma cosa fare se vogliamo salvare gli allegati da più email o da un'intera cartella di posta in Outlook? Prova la funzione Salva tutto (allegati) di Kutools per Outlook.

Stampa in batch tutti gli allegati in un messaggio email
Se ci sono molti allegati in un singolo messaggio email, sarà dispendioso in termini di tempo stamparli uno per uno. Il metodo seguente ti guiderà attraverso la stampa in batch di tutti gli allegati in un messaggio email selezionato facilmente.
1. Seleziona il messaggio email i cui allegati vuoi stampare successivamente.
2. In Outlook 2010 o versioni successive, clicca su File > Stampa > Opzioni di stampa. Vedi la seguente schermata:

3. Nella finestra di dialogo Stampa, controlla l'opzione Stampa file allegati. Gli allegati verranno stampati solo sulla stampante predefinita nell'area Opzioni di stampa.

4. Clicca sul pulsante Stampa.
5. Nella finestra di dialogo Apertura Allegato Email che appare, clicca sul pulsante Apri per procedere. (Nota: Questa finestra di dialogo apparirà separatamente per ogni allegato.)

Ora tutti gli allegati in questo messaggio email selezionato verranno stampati in una volta sola.
Stampa in batch tutti gli allegati e le immagini in più email selezionate
Per stampare tutti gli allegati in più email così come tutte le immagini nel corpo del messaggio in Outlook, segui i seguenti passaggi per applicare un codice VBA.
1. Nell'elenco delle email, tieni premuti i tasti Ctrl o Shift per selezionare più email i cui allegati vuoi stampare.
2. Premi contemporaneamente i tasti Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications.
3. Nella finestra Microsoft Visual Basic for Applications, clicca su Strumenti > Riferimenti. Quindi, seleziona l'opzione Microsoft Scripting Runtime come mostrato di seguito. Una volta finito, clicca OK.

4. Clicca su Inserisci > Modulo, quindi incolla il seguente codice VBA nella nuova finestra del modulo.
VBA: Stampa tutti gli allegati in più email di Outlook
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. Premi il tasto F5 o clicca sul pulsante Esegui per eseguire questo codice VBA. Ora vedrai che tutti gli allegati nelle email selezionate e le immagini nel corpo del messaggio vengono stampate.
Nota:
- Ogni immagine farà apparire una finestra di dialogo pop-up per chiederti conferma della stampa. Altri tipi di file verranno stampati direttamente.
- Se ci sono immagini nella firma dell'email, faranno apparire finestre di dialogo pop-up.
- Se ricevi l'errore Le macro in questo progetto sono disabilitate, consulta questa guida: Come abilitare e disabilitare le macro in Outlook?
Stampa in batch tutti gli allegati in più email selezionate, escludendo le immagini nel corpo
Per stampare solo gli allegati in più email, escludendo le immagini nel corpo del messaggio in Outlook, segui i seguenti passaggi per applicare un codice VBA.
1. Nell'elenco delle email, tieni premuti i tasti Ctrl o Shift per selezionare più email i cui allegati vuoi stampare.
2. Premi contemporaneamente i tasti Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications.
3. Nella finestra Microsoft Visual Basic for Applications, clicca su Strumenti > Riferimenti. Quindi, seleziona l'opzione Microsoft Scripting Runtime come mostrato di seguito. Una volta finito, clicca OK.

4. Clicca su Inserisci > Modulo, quindi incolla il seguente codice VBA nella nuova finestra del modulo.
VBA: Stampa tutti gli allegati in più email di Outlook
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. Premi il tasto F5 o clicca sul pulsante Esegui per eseguire questo codice VBA. Ora vedrai che tutti gli allegati nelle email selezionate vengono stampati.
Nota:
- Ogni immagine allegata farà apparire una finestra di dialogo pop-up per chiederti conferma della stampa. Altri tipi di file verranno stampati direttamente.
- Le immagini nel corpo del messaggio non verranno stampate.
- Se ricevi l'errore Le macro in questo progetto sono disabilitate, consulta questa guida: Come abilitare e disabilitare le macro in Outlook?
Demo: stampa uno o tutti gli allegati in un'email di Outlook
I migliori strumenti per la produttività in Office
Ultime novità: Kutools per Outlook lancia la versione gratuita!
Scopri il nuovo Kutools per Outlook con oltre100 funzionalità incredibili! Clicca per scaricare ora!
📧 Automazione email: Risposta automatica (disponibile per POP e IMAP) / Programmazione invio email / CC/BCC automatico tramite regola durante l’invio dell’email / Inoltro automatico (Regola avanzata) / Aggiungi saluto automaticamente / Suddivisione automatica delle email con più destinatari in email individuali ...
📨 Gestione email: Richiama Email / Blocca email di truffa tramite Oggetto e altro / Elimina Email duplicate / Ricerca Avanzata / Organizza cartelle ...
📁 Allegati Pro: Salvataggio in batch / Distacco in batch / Compressione in batch / Salvataggio automatico / Distacca automaticamente / Auto Comprimi ...
🌟 Magia dell’interfaccia: 😊Più emoji belle e simpatiche / Ti avvisa quando arrivano email importanti / Minimizza Outlook invece di chiuderlo ...
👍 Meraviglie con un clic: Rispondi a Tutti con Allegati / Email Anti-phishing / 🕘Mostra il fuso orario del mittente ...
👩🏼🤝👩🏻 Contatti e Calendario: Aggiunta massiva dei contatti dalle email selezionate / Dividi un Gruppo di Contatti in gruppi individuali / Rimuovi promemoria di compleanno ...
Usa Kutools nella lingua che preferisci: supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

