Manchmal möchten Sie möglicherweise alle Anhänge in einer E-Mail in eine komprimieren zip Datei direkt in Outlook. In diesem Fall können Sie den in diesem Artikel eingeführten VBA-Code verwenden, um diese Funktion zu erreichen.
Standardmäßig ist die Größe von Outlook für Anhänge begrenzt: 20 MB für POP3-, IMAP- oder andere webbasierte E-Mail-Konten und 10 MB für Exchange-Konten. Wenn also die Gesamtgröße der Anhänge das Limit überschreitet, werden entsprechende Fehler angezeigt. In diesem Fall ist es eine gute Option, alle Anhänge in a zu komprimieren zip Datei.
Wie Sie sehen, bietet Outlook jedoch keine so direkte Funktion. Das heißt, Sie müssen zuerst zip Diese Dateien befinden sich auf der Festplatte und hängen die neu erstellten Dateien erneut an zip Datei. In Wirklichkeit most Benutzer hoffen, dass sie dies direkt in Outlook erreichen können. Als Reaktion auf diese Anforderung werden wir im Folgenden vorstellen, wie VBA verwendet wird, um dies zu realisieren.
Komprimieren Sie alle Anhänge in a Zip Reichen Sie das
- Starten Sie zunächst Ihre Outlook-Anwendung.
- Drücken Sie dann im Outlook-Hauptfenster die Tasten „Alt + F11“.
- Öffnen Sie als Nächstes im neuen Outlook VBA-Editorfenster ein Modul.
- Kopieren Sie anschließend die folgenden VBA-Codes und fügen Sie sie in das Modul ein.
Sub ZipAttachments()
Dim objMail As Outlook.MailItem
Dim objAttachments As Outlook.attachments
Dim objAttachment As Outlook.Attachment
Dim objFileSystem As Object
Dim objShell As Object
Dim varTempFolder As Variant
Dim varZipFile As Variant
'Save the attachments to Temporary folder
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
varTempFolder = objFileSystem.GetSpecialFolder(2).Path & "\Temp " & Format(Now, "dd-mm-yyyy- hh-mm-ss-")
MkDir (varTempFolder)
varTempFolder = varTempFolder & "\"
Set objMail = Outlook.Application.ActiveInspector.CurrentItem
Set objAttachments = objMail.attachments
For Each objAttachment In objAttachments
objAttachment.SaveAsFile (varTempFolder & objAttachment.FileName)
Next
'Create a new zip file
varZipFile = InputBox("Specify a name for the new zip file", "Name Zip File", objMail.Subject)
varZipFile = objFileSystem.GetSpecialFolder(2).Path & "\" & varZipFile & ".zip"
Open varZipFile For Output As #1
Print #1, Chr$(80) & Chr$(75) & Chr$(5) & Chr$(6) & String(18, 0)
Close #1
'Copy all the saved attachments to the new zip file
Set objShell = CreateObject("Shell.Application")
objShell.NameSpace(varZipFile).CopyHere objShell.NameSpace(varTempFolder).Items
'Keep macro running until Compressing is done
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 all the attachments
Set objAttachments = objMail.attachments
While objAttachments.Count > 0
objAttachments.Item(1).Delete
Wend
'Add the new zip file to the current email
objMail.attachments.Add varZipFile
'Prompt
MsgBox ("Complete!")
End Sub
- Danach müssen Sie Ihre Outlook-Makroeinstellungen überprüfen, um sicherzustellen, dass das Makro zulässig ist.
- Später können Sie das neue VBA-Projekt wie gewohnt zur Symbolleiste für den Schnellzugriff des Nachrichtenfensters hinzufügen.
- Schließlich können Sie es versuchen.
- Erstellen Sie zunächst eine neue E-Mail und hängen Sie mehrere Dateien an. Oder öffnen Sie einfach eine Mail mit vielen Anhängen.
- Klicken Sie anschließend in der Symbolleiste für den Schnellzugriff auf die Makroschaltfläche.
- Später müssen Sie einen Namen für die angeben zip Datei und klicken Sie auf "OK". Standardmäßig wird der Betreff der E-Mail festgelegt.
- Sofort werden alle Anhänge zu a komprimiert zip Datei, wie der folgende Screenshot:
Unzip das .Zip Anhänge direkt in Outlook
Es ist unvermeidlich, dass Sie Anhänge mit “erhalten.zip”Dateierweiterung ab und zu. In diesem Szenario möchten Sie möglicherweise direkt unzip solche Dateien aus Ihrem Outlook heraus, anstatt sie auf dem lokalen Laufwerk zu speichern und zu dekomprimieren. Auch wenn Outlook nicht über eine solche native Funktion verfügt, können Sie sie auch mit VBA abrufen. Weitere Informationen finden Sie in einem anderen Artikel - „Wie man Unzip das .Zip Anhänge direkt in Outlook über VBA".
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



