Delete Multiple Attachments at Once

Remove the attachments of several selected emails in one go.

Last modified: 2012/08/08 | Accessed: 19.712  | #94
◀ Previous sample Next sample ▶
OLKeeper OLKeeper
OLKeeper reliably prevents users from closing their Outlook window and thus possibly missing reminders or e-mails.

Whether you select just one email or more, there's no function in Outlook to remove all the attachments at once.

This example lists the attachments by name and deletes them if you wish.

tip  How to add macros to Outlook
Public Sub DeleteAttachments2()
  Dim coll As VBA.Collection
  Dim obj As Object
  Dim Atts As Outlook.Attachments
  Dim Att As Outlook.Attachment
  Dim Sel As Outlook.Selection
  Dim i&, Msg$

  Set coll = New VBA.Collection

  If TypeOf Application.ActiveWindow Is Outlook.Inspector Then
    coll.Add Application.ActiveInspector.CurrentItem
    Set Sel = Application.ActiveExplorer.Selection
    For i = 1 To Sel.Count
      coll.Add Sel(i)
  End If

  For Each obj In coll
    Set Atts = obj.Attachments
    Msg = ""
    For i = Atts.Count To 1 Step -1
      Msg = Msg & Atts(i).FileName & vbCrLf
    If MsgBox(Msg, vbYesNo Or vbQuestion, "Delete?") = vbYes Then
      For i = Atts.Count To 1 Step -1
        Atts.Remove i
    End If
End Sub
Category-Manager Category-Manager
With Category-Manager you can group your Outlook categories, share them with other users, filter a folder by category, automatically categorize new emails, and more. You can use the Addin even for IMAP.
email  Send a message