Comment compresser rapidement toutes les pièces jointes dans un Zip Fichier dans votre e-mail Outlook

Partage maintenant:

Parfois, vous souhaiterez peut-être compresser toutes les pièces jointes d'un e-mail dans un zip fichier directement dans Outlook. Dans ce cas, vous pouvez utiliser le code VBA présenté dans cet article pour obtenir cette fonctionnalité.

Par défaut, Outlook a sa limite de taille de pièce jointe - 20 Mo pour POP3, IMAP ou d'autres comptes de messagerie Web et 10 Mo pour les comptes Exchange. Ainsi, lorsque la taille totale des pièces jointes dépasse la limite, vous obtiendrez des erreurs associées. Dans ce cas, il est judicieux de compresser toutes les pièces jointes dans un zip fichier.

Compressez rapidement toutes les pièces jointes dans un Zip Fichier dans votre e-mail Outlook

Cependant, comme vous pouvez le voir, Outlook n'offre pas une telle fonctionnalité directe. C'est-à-dire qu'il faut d'abord zip ces fichiers sur le disque dur, puis rattachez le nouveau zip En réalité, la plupart des utilisateurs souhaitent pouvoir le faire directement dans Outlook. Pour répondre à cette demande, nous allons vous montrer comment utiliser VBA pour y parvenir.

Compressez toutes les pièces jointes dans un Zip Fichier

  1. En premier lieu, lancez votre application Outlook.
  2. Appuyez ensuite sur les touches "Alt + F11" dans la fenêtre principale d'Outlook.
  3. Ensuite, dans la nouvelle fenêtre de l'éditeur Outlook VBA, ouvrez un module.
  4. Ensuite, copiez et collez les codes VBA suivants dans le module.
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

Code VBA - Compressez rapidement toutes les pièces jointes dans un Zip Fichier dans votre e-mail Outlook

  1. Après cela, vous devez vérifier vos paramètres de macro Outlook pour vous assurer que la macro est autorisée.
  2. Plus tard, vous pouvez ajouter le nouveau projet VBA à la barre d'outils d'accès rapide de la fenêtre de message comme d'habitude.
  3. Finalement, vous pouvez essayer.
  • Tout d'abord, créez un nouvel e-mail et joignez plusieurs fichiers. Ou ouvrez simplement un e-mail avec de nombreuses pièces jointes.
  • Cliquez ensuite sur le bouton macro dans la barre d'outils d'accès rapide.
  • Plus tard, vous devrez spécifier un nom pour le zip fichier et appuyez sur "OK". Par défaut, il sera défini comme le sujet du courrier.Spécifiez un nom pour le zip filet
  • À la fois, toutes les pièces jointes seront compressées dans un zip fichier, comme la capture d'écran suivante :Compressez toutes les pièces jointes dans un Zip Fichier

Décompressez le .Zip Pièces jointes directement dans Outlook

Il est inévitable que vous receviez des pièces jointes avec «.zipIl arrive que l'extension de fichier soit « .txt ». Dans ce cas, vous pouvez décompresser directement ces fichiers depuis Outlook plutôt que de les enregistrer et de les décompresser sur votre disque dur. Bien qu'Outlook ne propose pas cette fonctionnalité nativement, vous pouvez utiliser VBA pour y parvenir. Pour plus de détails, consultez l'article suivant : « … »Comment dézipper le .Zip Pièces jointes directement dans Outlook via VBA ».

Introduction de l'auteur:

Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris correction sql et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com

Partage maintenant:

Les commentaires sont fermés.