Einige Benutzer möchten alle E-Mails in einem Outlook-Ordner in einen komprimieren zip Datei. Obwohl es keine so direkte Funktion gibt, können Sie den in diesem Artikel bereitgestellten VBA-Code verwenden, um ihn schnell zu realisieren.
Zu zip Um alle E-Mails in einem Outlook-Ordner zu exportieren, müssen Sie diese zunächst einzeln auf Ihre lokale Festplatte exportieren und anschließend die Funktion „Senden an“ > „Komprimierter (gezippter) Ordner“ verwenden. Dies ist zweifellos sehr umständlich. Um Ihnen dies in einem Schritt zu ermöglichen, stellen wir Ihnen im Folgenden eine alternative Methode vor. Diese Methode verwendet VBA-Code. Falls Sie mit VBA nicht vertraut sind, können Sie sich unter „…“ informieren.So führen Sie VBA-Code in Outlook aus" inzwischen.

Komprimieren Sie alle E-Mails in einem Ordner in a Zip Reichen Sie das
- Starten Sie zunächst den Outlook VBA-Editor über „Alt + F11“.
- Kopieren Sie dann den VBA-Code und fügen Sie ihn in ein Modul ein.
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
- Klicken Sie anschließend auf die Taste „F5“, um dieses Makro auszuführen.
- Wählen Sie später im Popup-Dialogfeld den Outlook-Quellordner aus und klicken Sie auf „OK“.
- Wenn das Makro beendet ist, wird ein Windows-Ordner angezeigt, in dem sich ein neuer befindet zip Datei, die alle E-Mails aus dem ausgewählten Outlook-Ordner enthält (siehe folgende Abbildung).
Behandeln Sie problematische Outlook-Dateibeschädigungen
Unter allen häufigen Problemen in Outlook ist die Beschädigung von Outlook zweifellos das schwerwiegendste. Solche Probleme können jedoch jederzeit auftreten. Daher sollten Sie als regelmäßiger Outlook-Nutzer regelmäßig Backups Ihrer Outlook-Daten erstellen. Außerdem ist es ratsam, sich eine zuverlässige Software zuzulegen. Outlook reparieren Dienstprogramm, wie z DataNumen Outlook Repair.
Einführung des Autors:
Shirley Zhang ist eine Datenrettungsexpertin in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich SQL Fix und Outlook-Reparatursoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX


