Come comprimere rapidamente tutte le e-mail in una cartella di Outlook in a Zip Compila il

Condividi ora:

Alcuni utenti vorrebbero comprimere tutte le e-mail in una cartella di Outlook in un file zip file. Sebbene non esista una funzione così diretta, è possibile utilizzare il codice VBA esposto in questo articolo per realizzarla rapidamente.

A zip Per inviare tutte le email in una cartella di Outlook, è necessario prima esportarle una per una nell'unità locale e quindi utilizzare la funzione "Invia a" > "Cartella compressa (zippata)". Senza dubbio, in questo modo il procedimento è troppo laborioso. Pertanto, per aiutarvi a farlo in un colpo solo, di seguito vi insegneremo un altro metodo. Vi insegneremo come farlo con il codice VBA. Se non avete familiarità con VBA, potete fare riferimento a "Come eseguire il codice VBA in Outlook" nel frattempo.

Invia alla cartella compressa (zippata)

Comprimi tutte le email in una cartella in a Zip Compila il

  1. Per iniziare, avvia l'editor VBA di Outlook tramite la combinazione di tasti "Alt + F11".
  2. Quindi, copia e incolla il codice VBA in un modulo.
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

Codice VBA: comprimi tutte le e-mail in una cartella in a Zip Compila il

  1. Successivamente, fai clic sul pulsante "F5" per eseguire questa macro.
  2. Successivamente, nella finestra di dialogo popup, seleziona la cartella di origine di Outlook e fai clic su "OK".Seleziona la cartella di Outlook
  3. Al termine della macro, verrà visualizzata una cartella Windows, in cui è presente un nuovo file zip file che contiene tutte le email dalla cartella di Outlook selezionata, come mostrato nella figura seguente.New Zip Compila il

Gestire la fastidiosa corruzione dei file di Outlook

Tra tutti i problemi comuni di Outlook, senza dubbio il danneggiamento di Outlook è il più grave. Tuttavia, in realtà, tali problemi possono verificarsi in qualsiasi momento. Pertanto, se sei un utente regolare di Outlook, devi eseguire backup regolari dei dati di Outlook. Inoltre, è prudente procurarsi un robusto Riparazione di Outlook utilità, come ad es DataNumen Outlook Repair.

Introduzione dell'autore:

Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui correzione sql e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.