Cómo comprimir rápidamente todos los correos electrónicos de una carpeta de Outlook en una Zip Archivo

Comparte ahora:

A algunos usuarios les gustaría comprimir todos los correos electrónicos de una carpeta de Outlook en una zip archivo. Aunque no existe una función tan directa, puede utilizar el código VBA expuesto en este artículo para realizarlo rápidamente.

A zip Todos los correos electrónicos en una carpeta de Outlook, primero debe exportarlos a la unidad local uno por uno, y luego usar la función "Enviar a" > "Carpeta comprimida (zip)". Sin duda, de esta manera, es demasiado tedioso. Por lo tanto, para ayudarlo a lograrlo de una sola vez, a continuación, le enseñaremos otro método. Le enseñaremos cómo obtenerlo con código VBA. Si no está familiarizado con VBA, puede consultar “Cómo ejecutar código VBA en su Outlook" mientras tanto.

Enviar a carpeta comprimida (zip)

Comprima todos los correos electrónicos de una carpeta en un Zip Archivo

  1. Para empezar, inicie el editor VBA de Outlook mediante “Alt + F11”.
  2. Luego, copie y pegue el código VBA en un módulo.
Sub ZipAllEmailsInAFolder()
    Dim objFolder As Outlook.Folder
    Dim objItem As Object
    Dim objMail As Outlook.MailItem
    Dim strSubject As String
    Dim varTempFolder As Variant
    Dim varZipFile As Variant
    Dim objShell As Object
    Dim objFileSystem As Object
   
    'Select an Outlook Folder
    Set objFolder = Outlook.Application.Session.PickFolder
 
    If Not (objFolder Is Nothing) Then
       'Create a temp folder
       varTempFolder = "E:\" & objFolder.Name & Format(Now, "YYMMDDHHMMSS")
       MkDir (varTempFolder)
       varTempFolder = varTempFolder & "\"
   
       'Save each email as msg file
       For Each objItem In objFolder.Items
 
           If TypeOf objItem Is MailItem Then
              Set objMail = objItem
              strSubject = objMail.Subject
              strSubject = Replace(strSubject, "/", " ")
              strSubject = Replace(strSubject, "\", " ")
              strSubject = Replace(strSubject, ":", "")
              strSubject = Replace(strSubject, "?", " ")
              strSubject = Replace(strSubject, Chr(34), " ")
 
              objMail.SaveAs varTempFolder & strSubject & ".msg", olMSG
           End If
       Next
 
       'Create a new ZIP file
       varZipFile = "E:\" & objFolder.Name & " Emails.zip"
       Open varZipFile For Output As #1
       Print #1, Chr$(80) & Chr$(75) & Chr$(5) & Chr$(6) & String(18, 0)
       Close #1
 
       'Add the exported msg files to the ZIP file
       Set objShell = CreateObject("Shell.Application")
       objShell.NameSpace(varZipFile).CopyHere objShell.NameSpace(varTempFolder).Items

       On Error Resume Next
       Do Until objShell.NameSpace(varZipFile).Items.Count = objShell.NameSpace(varTempFolder).Items.Count
          Application.Wait (Now + TimeValue("0:00:01"))
       Loop
       On Error GoTo 0
 
       'Delete the temp folder
       Set objFileSystem = CreateObject("Scripting.FileSystemObject")
       objFileSystem.DeleteFolder Left(varTempFolder, Len(varTempFolder) - 1)
    End If
End Sub

Código VBA: comprima todos los correos electrónicos de una carpeta en un Zip Archivo

  1. Luego, haga clic en el botón de la tecla "F5" para ejecutar esta macro.
  2. Más tarde, en el cuadro de diálogo emergente, seleccione la carpeta de origen de Outlook y haga clic en "Aceptar".Seleccione la carpeta de Outlook
  3. Cuando finalice la macro, se mostrará una carpeta de Windows, en la que hay una nueva zip archivo que contiene todos los correos electrónicos de la carpeta de Outlook seleccionada, como se muestra en la siguiente figura.New Zip Archivo

Manejar la problemática corrupción de archivos de Outlook

Entre todos los problemas comunes de Outlook, sin duda, el daño a Outlook es el más grave. Sin embargo, en realidad, estos problemas pueden ocurrir en cualquier momento. Por lo tanto, si eres un usuario habitual de Outlook, necesitas hacer copias de seguridad periódicas de tus datos. Además, es prudente contar con un sistema de almacenamiento en la nube robusto. Reparación de Outlook utilidad, como DataNumen Outlook Repair.

Introducción del autor:

Shirley Zhang es experta en recuperación de datos en DataNumen, Inc., que es el líder mundial en tecnologías de recuperación de datos, incluyendo corrección de sql y productos de software de reparación de Outlook. Para más información visite www.datanumen.com

Comparte ahora:

Los comentarios están cerrados.