3

Using Outlook 2013. When you compose a new email there is usually a way to quickly get rid of it in case you no longer want to send the email. Is there a way to do this in Outlook?

I tried closing the message (and not save/keep when asked) but that creates a new unread item in my deleted items folder causing it to light up like a Christmas tree. I then have to manually go into that folder to clean the draft up.

I'm looking for something like Gmail's trashcan icon. A simple one-click painless way of getting rid of the message once and for all. (There are occasions when I want to save a draft - just in case -, but more often I do not.)

UPDATE: You can expose a "Delete" button on the "Quick Access Toolbar" at the top, which results in the message item being deleted. This works at the time when you just started typing a new email. Clicking delete destroys the message after the mandatory warning. But(!), as soon as the email is auto-saved (after some time) it goes into Drafts folder. Deleting the message at this point KEEPS the message as it is merely moved into Deleted Items.

Is there some setting that can make Outlook mimic Gmail's trashcan button when creating a new email? It's such a simple use case: "I don't want to send the email I just started, changed my mind, get rid of it, erase all traces of it." Is this another Microsoft feature shortcoming?

0

4 Answers 4

1
  1. You can write a VBA script that does something like Discard by marking message as read and removing them to Deleted Items. After that place the button on message window that runs the macro (using Customize Ribbon -> Macros).

Something like this:

Sub Discard()
    On Error Resume Next
    Dim objItem As MailItem

    Set objInspector = ActiveInspector
    If Not objInspector Is Nothing Then
        Set objItem = objInspector.CurrentItem
        If Not objItem Is Nothing And Not objItem.Sent Then
            objItem.UnRead = False
            objItem.Delete
        End If
    End If
End Sub
  1. Free Quick Tweaks Add-In can mark all deleted items as read automatically.
  2. SHIFT+DEL eliminates selected messages in message list without placing it them Deleted Items.
4
  • SHIFT + DEL doesn't seem to do anything when you're in the message composer window.
    – Balage
    Commented May 12, 2015 at 18:39
  • Updated the answer by providing a "Discard" script. Maybe you'll find it handy.
    – thims
    Commented May 12, 2015 at 19:59
  • Thanks for this update. How would I then delete the message from Deleted Items as well within the same macro? I really just want the message gone without a trace.
    – Balage
    Commented May 13, 2015 at 14:54
  • I have to write a script. To cancel an email before sending it. This is Microsoft. This is dogsh*t.
    – Robert M.
    Commented Sep 8, 2021 at 4:03
1

I figured out a way to automatically mark the items that are added to the deleted folder as read. With this solution, it is not necessary to add a button that is linked to a macro.

Simply add the following code to "ThisOutlookSession" in the VBA editor:

Private WithEvents deletedItems As Outlook.Items

Private Sub Application_Startup()
    Dim olApp As Outlook.Application
    Dim objNS As Outlook.NameSpace
    Set olApp = Outlook.Application
    Set objNS = olApp.GetNamespace("MAPI")
    'Default folder for deleted items
    Set deletedItems = objNS.GetDefaultFolder(olFolderDeletedItems).Items
End Sub

Private Sub deletedItems_ItemAdd(ByVal Item As Object)
    Dim deletedEmail As Outlook.MailItem
    If TypeName(Item) = "MailItem" Then
        Set deletedEmail = Item
        deletedEmail.UnRead = False
    End If
End Sub

You will need to restart Outlook to make it work.

Note that it will apply to all deleted emails and not only the drafts.

2
  • Will this code have to be reapplied every time you reopen Outlook?
    – Burgi
    Commented May 13, 2016 at 23:24
  • Once you added the code in "ThisOutlookSession", you can save and close the VBA editor. The code will then be saved in the Outlook VBA file and you do not need to add it every time you restart Outlook.
    – Emmanuel P
    Commented May 17, 2016 at 8:13
1

The current version of Outlook has a bunch of action buttons on the middle of the right edge of the window and in there is a red X for discard.

I agree the Outlook user interface is pretty terrible and not intuitive but there should be no need to create macros just to discard a draft message.

3
  • 1
    The point here was that you wouldn't have to manually check the deleted items folder to make sure the message is gone. The red X does not do that.
    – Balage
    Commented May 18, 2017 at 20:12
  • Gotcha. Either way, though, I think this issue is moot now. I was not able to reproduce this behavior and I am using the latest version of Outlook. It seems they have fixed this bug. Commented May 25, 2017 at 15:49
  • I tested it in response to your comment and the issue still exists in v. 1703 build 7967.2161 (latest to date) Look, I get it - it is understandable not to remove the item from Deleted Items, which is the conservative approach; I would not call it a bug. Some people might want it back - just in case.
    – Balage
    Commented May 25, 2017 at 16:31
0

The version I ended up using has code to remove the mail item from Deleted Items after deletion.

Sub Discard()
    On Error Resume Next
    Dim objItem As MailItem

    Set objInspector = ActiveInspector
    If Not objInspector Is Nothing Then
        Set objItem = objInspector.CurrentItem
        If Not objItem Is Nothing And Not objItem.Sent Then
            'no EntryID exists for freshly created mail, but does for a draft
            MyEntryId = objItem.EntryID
            objItem.UnRead = False
            objItem.Delete
            If Not MyEntryId = "" Then
                Dim oDeletedItems As Outlook.Folder
                'Obtain a reference to deleted items folder
                Set oDeletedItems = Application.Session.GetDefaultFolder(olFolderDeletedItems)
                'Delete last item from Deleted Items
                oDeletedItems.Items.Item(oDeletedItems.Items.Count).Delete
            End If
        End If
    End If
End Sub

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .