1

There are few annoying hotkeys in Outlook 2016. For example ctrl-F means "find" in most of application but in outlook it means "forward message". Several application use Backspace to return back but it means "archive message" in outlook.

Is there a way to reassign some hotkeys or disable some hotkeys in Outlook 2016?

1 Answer 1

2

Here are two ways to stop Outlook Backspace Archive shortcut key from working:

  1. Exactly, via the Registry

If you're willing and able to update the Registry, search for DisableOneClickArchive DWORD on this page and make the edit as described there: https://office365itpros.com/2022/09/02/outlook-archive-folder/

  1. Or catch the action via Visual Basic code I wrote. The only downside to this is you have to code it for each folder, and it prevents an item from going to the Archive folder for any reason.

This code is for the Inbox and Sent default folders. I have also included code for a non-default folder but obviously I don't know your folder name so I have commented that code out with a single quote followed by a period. To activate those lines remove all the '. and rename Other to your folder name. If your folder is nested then just prefix it with the parent folder name(s) like this:

Outlook.Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Parent.Folders("TheParentOfOther").Folders("Other")

(or it it's nested under Inbox then just code it directly after, like this:

Outlook.Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders("Other")

Instructions

Open your Outlook Visual Basic via the Developer Tab on the ribbon (if you don't see it, click File, Options, Customize Ribbon, then tick Developer tab under Main).

On the left Project Explorer window, expand the Project and Microsoft Outlook Objects then double-click ThisOutlookSession

In the window on the right paste the code below. (If you already have code there then you will need to merge the Private definition section, the Application_Startup lines, and append subs below all.)

Then click Save, and restart Outlook.

' Prevent move to Archive folder from Inbox or Sent or other folders

' Define each folder's variable with event watching
Private WithEvents folderInbox As Outlook.Folder
Private WithEvents folderSent As Outlook.Folder
'.Private WithEvents folderOther As Outlook.Folder

' During startup, set the folder variables
Private Sub Application_Startup()
   Set folderInbox = Outlook.Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
   Set folderSent = Outlook.Application.GetNamespace("MAPI").GetDefaultFolder(olFolderSentMail)
'. Set folderOther = Outlook.Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Parent.Folders("Other")
End Sub

' Before moving an item out of the Inbox folder,
Private Sub folderInbox_BeforeItemMove(ByVal Item As Object, ByVal MoveTo As MAPIFolder, Cancel As Boolean)
   ' if it's to the Archive folder, cancel the move
   If MoveTo = "Archive" Then Cancel = True
End Sub
' Before moving an item out of the Sent folder,
Private Sub folderSent_BeforeItemMove(ByVal Item As Object, ByVal MoveTo As MAPIFolder, Cancel As Boolean)
   ' if it's to the Archive folder, cancel the move
   If MoveTo = "Archive" Then Cancel = True
End Sub
'.' Before moving an item out of the Other folder,
'.Private Sub folderOther_BeforeItemMove(ByVal Item As Object, ByVal MoveTo As MAPIFolder, Cancel As Boolean)
'.   ' if it's to the Archive folder, cancel the move
'.   If MoveTo = "Archive" Then Cancel = True
'.End Sub
1
  • +1 because it really disable Archive via backspace but not accepted because it is solution specific to one hotkey... Oct 2, 2023 at 12:34

You must log in to answer this question.

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