I'm a gmail junkie, and one of my favorite features is the keyboard shortcut "a" inside an email to archive the message. I can't remember if that was the default or if I set it to such a quick little keypress, but by now it's totally ingrained in my memory.

I'm setting up Outlook 2010 (or 2013) for work, and set up a similar "quick step" to archive, mark as read, and mark as complete any email.

It would be great, except for keyboard shortcuts they only give the option for "CTRL + SHIFT + 1" and other number key options. With a keyboard shortcut that convoluted, I'm not going to remember it and might as well just reach for my mouse.

Is there any way to set custom keyboard shortcuts for Outlook 2010? I want one-key shortcuts, not 3-keys-at-once!

6 Answers 6


I also thought that a shortcut where you have to press three keys at once was too difficult!

My solution was also in AutoHotKey. First you set the title match mode to RegEx because then you can match the titles through a regular expression. Put the following near the top of your script:

SetTitleMatchMode RegEx

And here is the shortcut which should only work in Outlook 2010 (note that I am using Control + Shift + 9):

#IfWinActive Inbox.*Microsoft Outlook
a:: SendInput ^+9

For Outlook 2013, the regex needs to be modified slightly:

#IfWinActive Inbox.*Outlook
a:: SendInput ^+9
  • Caveat emptor. Using the reading pane seems to break these snippets since the active window title does not change.
    – iPaulo
    Jul 25, 2014 at 18:45
  • iPaulo - true, but I only use them from the main window so it works for me. BTW, I use CapsLock & a not just a for the hotkey. Jul 26, 2014 at 22:23
  • What if I'm typing an email within the main window of Outlook 2013? Seems like this approach won't work, since pressing "a" will trigger the shortcut. Do you know of any way to detect this using AutoHotkey?
    – Mikhail
    Mar 9, 2016 at 10:27
  • @Mikhail - its quite easy to use another shortcut like Alt-a which would be !a. See autohotkey.com/docs/Hotkeys.htm for more info. Mar 9, 2016 at 10:33
  1. Open a new email
  2. Right-click on the Quick Access Toolbar and select Customize Quick Access Toolbar.
  3. Under Choose commands from, select All Commands.
  4. Select Signature and click the Add button.
  5. Click OK

If you had the default five items in your Quick Access Toolbar, Signature will now be #6. Access it by pressing Alt+6. Note that if you are in the Calendar then you need to release Alt before pressing 6.

  • What does signature have to do with "custom keyboard shortcuts"?
    – Larsen
    Jul 16, 2020 at 10:31

You can use Autohotkey to make any shortcut you want. It's very easy to learn, they have a good enough documentation

Note: Use #IfWinActive / #IfWinExist to target Outlook or any other program specifically.

  • 1
    Thanks, and I actually have a few autohotkey scripts running... I foresee trouble, though, changing something as simple as the "a" key into a command. It would have to be limited to Outlook firstoff, and only when a textfield doesn't have focus. Might be possible with advanced autohotkey, but not simple.
    – ck_
    Oct 26, 2010 at 0:10
  • 1
    I think that you could achieve what you wanted simply using the Window Spy in AutoHotKey to find out what the whole window is defined as, and then using IfWinActive to make it only apply in certain window classes. See this page for details. autohotkey.com/docs/commands/IfWinActive.htm Dec 13, 2010 at 4:37
  • @blackmastiff I tried to switch Outlook from reading mode to typing reply mode - Window Spy detected no changes at all. Any other ideas? I only can think of inspecting windows hierarchy or pixel colors (which is not robust).
    – Mikhail
    Mar 9, 2016 at 10:32

Actually OS X itself allows you to do this for any app for any menu item using the Keyboard/Mouse system prefs pane. For details see:




See this solution in AutoHokey forum: https://autohotkey.com/board/topic/102227-gmailkeys-for-outlook-2013/


Like this:

Opt("WinTitleMatchMode", 2)
HotKeySet("{INSERT}", "captureIns")
Func captureIns()

   if (WinGetState("Microsoft Outlook") == 15) Then

   HotKeySet("{INSERT}", "captureIns")

while 1

You must log in to answer this question.

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