Note: The other languages of the website are Google-translated. Back to English

¿Cómo imprimir todos los archivos adjuntos en uno o varios correos electrónicos en Outlook?

Como sabe, solo imprimirá el contenido del correo electrónico, como el encabezado y el cuerpo, cuando haga clic en el Declarar impuestos > Imprimir en Microsoft Outlook, pero no imprima los archivos adjuntos. Aquí le mostraremos cómo imprimir todos los archivos adjuntos en un correo electrónico seleccionado cómodamente en Microsoft Outlook.


Imprima todos los archivos adjuntos en un mensaje de correo electrónico uno por uno

Microsoft Outlook nos proporciona Impresión rápida , que puede ayudarlo a imprimir archivos adjuntos en un mensaje de correo electrónico uno por uno.

1. Seleccione el mensaje de correo electrónico cuyos archivos adjuntos imprimirá más tarde.

2. Haga clic en un archivo adjunto en este correo electrónico.

3. Haga clic en Impresión rápida botón en el Acciones grupo en el Archivos adjuntos .

Nota la Herramientas de adjunto no se activará hasta que haga clic en los archivos adjuntos en los correos electrónicos.

4. Aparece un cuadro de diálogo Abrir archivo adjunto de correo y, por favor, haga clic en el Abierta

Tenga en cuenta que este paso abrirá el archivo adjunto seleccionado e imprimirá este archivo adjunto seleccionado al mismo tiempo.

Para imprimir otros archivos adjuntos en este correo electrónico, repita del Paso 2 al Paso 4.

Guarde / exporte rápidamente todos los archivos adjuntos de varios correos electrónicos en Outlook

Normalmente podemos guardar archivos adjuntos de un correo electrónico activando el Herramientas de adjunto y aplicando el Guardar todos los archivos adjuntos característica en Outlook. Pero, ¿qué sucede si guarda archivos adjuntos de varios correos electrónicos o de toda la carpeta de correo en Outlook? Prueba Kutools para Outlook Guardar todo (Adjuntos) característica.


guardar archivos adjuntos en varios correos electrónicos kto9

Imprima por lotes todos los archivos adjuntos en un mensaje de correo electrónico

Si hay muchos archivos adjuntos en un mensaje de correo electrónico, llevará mucho tiempo imprimirlos uno por uno. Y el siguiente método lo guiará a través de la impresión por lotes de todos los archivos adjuntos en un mensaje de correo electrónico seleccionado fácilmente.

1. Seleccione el mensaje de correo electrónico cuyos archivos adjuntos imprimirá más tarde.

2. En Outlook 2010 o versiones posteriores, haga clic en el Declarar impuestos > Imprimir > Opciones de impresión. Vea la siguiente captura de pantalla:

3. En el cuadro de diálogo Imprimir, marque la Imprimir archivos adjuntos. Los archivos adjuntos se imprimirán solo en la impresora predeterminada opción en el Opciones de impresión .

4. Haga clic en Imprimir

5. En el cuadro de diálogo emergente Abrir archivo adjunto de correo, haga clic en el Abierta botón para seguir adelante. (Nota:: Este cuadro de diálogo aparecerá para cada archivo adjunto por separado).

Ahora todos los archivos adjuntos en este mensaje de correo electrónico seleccionado se imprimirán a la vez.


Imprima por lotes todos los archivos adjuntos e imágenes en varios correos electrónicos seleccionados

Para imprimir todos los archivos adjuntos en varios correos electrónicos, así como todas las imágenes en el cuerpo del mensaje en Outlook, siga los pasos a continuación para aplicar un código VBA.

1. En la lista de correo, mantenga Ctrl or cambio teclas para seleccionar varios correos electrónicos cuyos archivos adjuntos imprimirá.

2. prensa otro + F11 teclas juntas para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

3. En la ventana de Microsoft Visual Basic para Aplicaciones, haga clic en Herramientas > Referencias. Y luego revisa el Tiempo de ejecución de secuencias de comandos de Microsoft opción como se muestra a continuación. Una vez terminado, haga clic en OK.

4. Hacer clic recuadro > Móduloy luego pegue debajo del código VBA en la nueva ventana del módulo.

VBA: imprima todos los archivos adjuntos en varios correos electrónicos de 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. Prensa F5 o haga clic en el Ejecutar botón para ejecutar este código VBA. Ahora verá que se imprimen todos los archivos adjuntos en los correos electrónicos seleccionados y las imágenes en el cuerpo del mensaje.

Nota:

  • Cada imagen abrirá un cuadro de diálogo emergente para pedirle confirmación de impresión. Mientras que otros tipos de archivos se imprimirán directamente.
  • Si hay imágenes en una firma de correo electrónico, también aparecerán cuadros de diálogo emergentes.
  • Si lo consigues Las macros de este proyecto están deshabilitadas. error, consulte este tutorial: ¿Cómo habilitar y deshabilitar macros en Outlook?

Imprima por lotes todos los archivos adjuntos en varios correos electrónicos seleccionados, excepto las imágenes en el cuerpo

Para imprimir solo los archivos adjuntos en varios correos electrónicos pero las imágenes en el cuerpo del mensaje en Outlook, siga los pasos a continuación para aplicar un código VBA.

1. En la lista de correo, mantenga Ctrl or cambio teclas para seleccionar varios correos electrónicos cuyos archivos adjuntos imprimirá.

2. prensa otro + F11 teclas juntas para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

3. En la ventana de Microsoft Visual Basic para Aplicaciones, haga clic en Herramientas > Referencias. Y luego revisa el Tiempo de ejecución de secuencias de comandos de Microsoft opción como se muestra a continuación. Una vez terminado, haga clic en OK.

4. Hacer clic recuadro > Móduloy luego pegue debajo del código VBA en la nueva ventana del módulo.

VBA: imprima todos los archivos adjuntos en varios correos electrónicos de 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. Prensa F5 o haga clic en el Ejecutar botón para ejecutar este código VBA. Ahora verá que se imprimen todos los archivos adjuntos en los correos electrónicos seleccionados.

Nota:

  • Cada imagen adjunta abrirá un cuadro de diálogo emergente para solicitarle confirmación de impresión. Mientras que otros tipos de archivos se imprimirán directamente.
  • Las imágenes del cuerpo del mensaje no se imprimirán.
  • Si lo consigues Las macros de este proyecto están deshabilitadas. error, consulte este tutorial: ¿Cómo habilitar y deshabilitar macros en Outlook?

 


Demostración: imprima uno o todos los archivos adjuntos en un correo electrónico de Outlook


Consejo: En este video, Kutools pestaña es agregada por Kutools para Outlook. Si lo necesita, haga clic en aquí para tener una prueba gratuita de 60 días sin limitación!


Kutools para Outlook: trae 100 funciones avanzadas a Outlook y hace que el trabajo sea mucho más fácil.

  • Auto CC / BCC por reglas al enviar correo electrónico; Reenvío automático Varios correos electrónicos personalizados; Respuesta automática sin servidor de intercambio y más funciones automáticas ...
  • Advertencia de BCC - mostrar mensaje cuando intente responder a todos si su dirección de correo está en la lista CCO; Recordar si faltan archivos adjuntosy más funciones de recordatorio ...
  • Responder (todos) con todos los archivos adjuntos en la conversación de correo; Responder muchos correos electrónicos en segundos; Agregar saludo automáticamente cuando responda; Agregar fecha al asunto ...
  • Herramientas de archivos adjuntos: administre todos los archivos adjuntos en todos los correos, Desconexión automática, Comprimir todo, Renombrar todo, Guardar todo ... Informe rápido, Contar correos seleccionados...
  • Potentes correos electrónicos no deseados por costumbre; Eliminar correos y contactos duplicados... Le permite hacerlo de forma más inteligente, más rápida y mejor en Outlook.
tiro kutools outlook kutools pestaña 1180x121
tiro kutools outlook kutools plus pestaña 1180x121
 
Comentarios (23)
5 clasificado de 5 · 1 calificaciones
Este comentario fue minimizado por el moderador en el sitio
Esto es muy útil, pero ¿no me ayuda con Office 365?
Este comentario fue minimizado por el moderador en el sitio
Podría resolver esta parte por mí mismo: lo que estoy tratando de descubrir es por qué, a pesar de hacer eso, los archivos adjuntos no se imprimirían. Aparece un mensaje de error para cada archivo adjunto que me pregunta si quiero "abrir" o "guardar". Elegir cualquiera de las opciones produce exactamente esos resultados; en otras palabras, todavía no se imprime, solo se abre o se guarda. Tengo 20 archivos adjuntos de 4 correos electrónicos. Realmente no quiero tener que abrir 80 documentos solo para poder imprimirlos. Claramente, hay una configuración de seguridad de "sálvame de mí mismo" que debe borrarse para que pueda usar mi propia computadora y el sistema operativo que compré y pagué. ESO es lo que necesito saber.
Este comentario fue minimizado por el moderador en el sitio
Haga doble clic en el correo electrónico para que "salga" por sí mismo. Haga clic derecho en uno de los archivos adjuntos y haga clic en "seleccionar todo", luego "impresión rápida".
Este comentario fue minimizado por el moderador en el sitio
De acuerdo con Leah, esto no funciona. Simplemente imprime el cuerpo principal del correo electrónico y el primer archivo adjunto, no todos. Necesita instrucciones sobre cómo imprimirlos todos usando las opciones "seleccionar todo" que se muestran arriba.
Este comentario fue minimizado por el moderador en el sitio
si desea imprimir todos los archivos adjuntos juntos en 1 correo electrónico, esto es lo que debe hacer. primero haga una carpeta en su escritorio... Llamé a la mía "imprimir". vaya al correo electrónico con los archivos adjuntos... resalte todos los archivos adjuntos, haga clic con el botón derecho, guarde todos los archivos adjuntos en la carpeta de impresión. Abra la carpeta de impresión... resáltelos todos... haga clic con el botón derecho... imprimir.



ahora, si tan solo pudiera descubrir cómo imprimir todos los archivos adjuntos en 200 correos electrónicos sin abrir cada uno e imprimirlo.
Este comentario fue minimizado por el moderador en el sitio
¡La función Separar todo (archivos adjuntos) de Kutools for Outlook puede ayudarlo a descargar todos los archivos adjuntos de varios correos electrónicos con varios clics! https://www.extendoffice.com/product/kutools-for-outlook/outlook-detach-attachments.html
Este comentario fue minimizado por el moderador en el sitio
si un pdf tiene el mismo nombre, la macro imprime solo un pdf, ¿cómo puedo cambiar el código para modificar el nombre del pdf?
Este comentario fue minimizado por el moderador en el sitio
el código VBA da sintaxis es error
Este comentario fue minimizado por el moderador en el sitio
en la línea 9, la eliminación de "On Error Resume Next" funcionó para mí.
Este comentario fue minimizado por el moderador en el sitio
sí, esto también funcionó para mí. ¡Gracias!
Este comentario fue minimizado por el moderador en el sitio
Gracias 
Este comentario fue minimizado por el moderador en el sitio
Hola, he estado usando este atajo durante algunas semanas, imprimiendo todos los archivos adjuntos de varios correos electrónicos a la vez, y recientemente tuve que eliminar la línea 9 como dijo Nilanka, que ha estado funcionando, pero ya no funciona. Recibo el cuadro de advertencia que dice que las macros en este proyecto están deshabilitadas... y así sucesivamente... si alguien tiene una solución para hacer que esto funcione como antes, por favor, lmk, ya que estoy seleccionando alrededor de 60 correos electrónicos que contienen archivos adjuntos para imprimir. Gracias
Este comentario fue minimizado por el moderador en el sitio
Este comentario fue minimizado por el moderador en el sitio
Hola a todos, actualizamos el código VBA en el tutorial el 2022/08/03. Si aún necesita imprimir todos los archivos adjuntos, verifique el nuevo código. 😊
Este comentario fue minimizado por el moderador en el sitio
Hola, ayer me funcionó bien, pero ahora dice "las macros de este proyecto están deshabilitadas". ¿Algún consejo sobre cómo habilitarlas? 
Este comentario fue minimizado por el moderador en el sitio
Este comentario fue minimizado por el moderador en el sitio
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.
Este comentario fue minimizado por el moderador en el sitio
hola, ich möchte nur den Anhang der Mails von der angegebenen Adresse senden, wie kann ich das machen, danke
Este comentario fue minimizado por el moderador en el sitio
Estoy usando Microsoft 365 y esto funcionó después de eliminar la línea 9. ¡Gracias! Esto me ha ahorrado un poco de tiempo.
5 clasificado de 5
Este comentario fue minimizado por el moderador en el sitio
Queridos todos,

Probé el VBA y el código se ejecuta, pero se abren muchas ventanas emergentes en la pantalla para imprimir imágenes de la firma del correo (aparentemente, esto se considera un archivo adjunto). Alguien sabe como solucionarlo?

S.
Este comentario fue minimizado por el moderador en el sitio
Hola,

Lamento que la impresión de imágenes muestre ventanas emergentes. Tendrás que confirmar cada uno para descargar todas las imágenes. Si no necesita imprimir imágenes, haga clic en Cancelar.

Amanda
Este comentario fue minimizado por el moderador en el sitio
Si no desea imprimir imágenes en el cuerpo de un mensaje, utilice el siguiente código:
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
Este comentario fue minimizado por el moderador en el sitio
Estimada Amanda,

Gracias por el codigo. ¡Funcionó!

S.
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL