Keyboard shortcuts in non-English version of Microsoft Office

keyboard shortcutslanguagemicrosoft-office

I have a big problem with the Portuguese version of MS Office 2007 and 2010.

The standard shortcuts that any common application uses are changed.
Some shortcuts that are not working: Ctrl+s (save), Ctrl+f (find) and Ctrl+a (select all).

I want to configure it to use the shortcuts of the English version.

There is an option that allow to configure each shortcut separately. Furthermore, I have to configure for each app, if I configure in Word, I will have to configure again for Excel.

How to use the shortcuts of the English version of MS Office regardless of the Office language?

Thanks

Best Answer

I'm almost certain that there's not built-in way to change shortcuts in MS Office applications.

However, you can use AutoHotkey for this purpose.

The script

^a::
^f::
^s::
    WinGet, Process, ProcessName, A
    if(RegExMatch(Process, "^(WINWORD|EXCEL)\.EXE$"))
    {
       if(A_ThisHotKey = "^a")
           SendPlay, ^e
       if(A_ThisHotKey = "^f")
           SendPlay, ^b
       if(A_ThisHotKey = "^s")
           SendPlay, ^g
    }
    else
        SendPlay, %A_ThisHotKey%
return

How it works

  • ^a::, specifies one of the hotkeys that run the script before the return statement, where ^ indicates the Ctrl key.

  • WinGet, Process, ProcessName, A stores the active (A) window's process name in the variable Process.

  • if(RegExMatch(Process, "^(WINWORD|EXCEL)\.EXE$")) {...} else ... checks if Process matches the regular expression, i.e., if it matches one of the strings WINWORD.EXE or EXCEL.EXE.

    • If so, the first block gets executed.

      • if(A_ThisHotKey = "^a") checks if the pressed hotkey is Ctrl + A.

        If it is, it simulates the key bombination Ctrl + E, which is the Portuguese hotkey to select all1.

    • Otherwise, SendPlay, %A_ThisHotKey% simulates the key combination that was initially pressed.

      This way, other applications still behave as they should.

How to use

  1. Download and install the latest version of AutoHotkey.

  2. Save the above script as ms-office.ahk, using your favorite text editor.

  3. Double-click the file to run the script.

  4. If you wish, copy the script (or a link to it) in the Startup folder.

  5. To add further MS Office applications, just modify the regular expression.

    To add PowerPoint, e.g., replace (WINWORD|EXCEL) by (WINWORD|EXCEL|POWERPNT).

  6. To add further hotkeys, you have to modify two parts of the script.

    To add Ctrl + O (Open...), e.g., add the line ^o:: to the list at the very top add these lines inside the if block:

    if(A_ThisHotKey = "^o")
        SendPlay, ^a
    

1 At least, I think it is. I took the hotkeys from my Spanish MS Office. Adjust if needed.

Related Question