You want to change the keyboard shortcut Ctrl+Shift+S in Word so it runs a custom macro instead of the default Apply Styles task pane. By default, Word assigns Ctrl+Shift+S to open the Apply Styles pane. Reassigning this shortcut requires careful steps because Word does not allow you to directly overwrite a built-in shortcut through the Customize Keyboard dialog for some commands. This article explains how to bypass that limitation by creating a macro and assigning it to the Ctrl+Shift+S combination using a manual workaround with the Normal.dotm template.
Key Takeaways: Reassigning Ctrl+Shift+S to a Custom Macro in Word
- File > Options > Customize Ribbon > Keyboard shortcuts: Customize: Standard keyboard customization opens here, but it does not allow overwriting Ctrl+Shift+S directly for built-in commands.
- Alt+F8 opens the Macros dialog: Use this to create a new macro that will replace the default action of Ctrl+Shift+S.
- Manual edit of Normal.dotm via Organizer or VBA: You must copy the macro into the Normal.dotm template and then assign the shortcut using a VBA macro or by editing the template file directly.
Why Word Prevents Direct Reassignment of Ctrl+Shift+S for Macros
Word stores keyboard shortcut assignments in two layers: built-in shortcuts for default commands and user-customized shortcuts stored in the Normal.dotm template. The Ctrl+Shift+S combination is a built-in shortcut for the Apply Styles command. When you open the Customize Keyboard dialog, you can assign a new shortcut to a macro, but Word will not let you assign a shortcut that is already assigned to a built-in command unless you first remove that assignment. However, removing the assignment for Ctrl+Shift+S from Apply Styles is not straightforward because the Remove button is grayed out for built-in shortcuts in the Customize Keyboard dialog. This means you must use a workaround: create a macro, then use VBA code to force the shortcut assignment into the Normal.dotm template.
Understanding the Normal.dotm Template
Normal.dotm is the global template that loads every time Word starts. It stores macros, styles, and keyboard customizations. When you assign a shortcut to a macro, the assignment is saved in Normal.dotm under the keyboard category. The trick is to write a small VBA macro that overrides the Ctrl+Shift+S shortcut by assigning it to your custom macro using the KeyBindings.Add method. This method can override built-in shortcuts because it writes directly to the template file.
Steps to Reassign Ctrl+Shift+S to Your Custom Macro
Follow these steps in order. You need to have a macro ready that you want to run. If you do not have one, you can create a simple test macro first.
- Open the VBA Editor
Press Alt+F11 to open the Microsoft Visual Basic for Applications editor. In the Project Explorer pane, expand Normal then Modules. If you do not see a Modules folder, right-click Normal, choose Insert > Module, and name it something like NewShortcuts. - Write the Macro That Will Run When You Press Ctrl+Shift+S
In the module you created, paste this sample macro that displays a message box:Sub MyCustomMacro()
MsgBox "Your custom macro ran."
End Sub
Replace the code inside the Sub with your actual macro logic. Close the VBA editor. - Write the Assignment Macro
In the same module, add a second macro that will assign Ctrl+Shift+S to MyCustomMacro:Sub AssignShortcut()
Dim kb As KeyBinding
Set kb = Application.KeyBindings.Add _
KeyCategory:=wdKeyCategoryMacro, _
Command:="MyCustomMacro", _
KeyParameter:="Ctrl+Shift+S"
End Sub
This macro uses theAddmethod to override the built-in shortcut. TheKeyParameteris case-sensitive. - Run the Assignment Macro
Press Alt+F8 to open the Macros dialog. Select AssignShortcut from the list and click Run. The macro runs silently and writes the new shortcut assignment to Normal.dotm. Word now runs MyCustomMacro when you press Ctrl+Shift+S. - Test the New Shortcut
Press Ctrl+Shift+S. If you used the sample macro above, you see a message box. If you see the Apply Styles pane instead, the assignment did not take. Repeat step 4 after closing and reopening Word.
Alternative Method: Using the Customize Keyboard Dialog With a Saved Template
If the VBA method does not work, you can try this alternative: save your macro in a separate template, then use the Customize Keyboard dialog to assign the shortcut only for that template. Open the Customize Keyboard dialog via File > Options > Customize Ribbon > Keyboard shortcuts: Customize. In the Save changes in dropdown, choose your custom template instead of Normal.dotm. Then select Macros in the Categories list, select your macro, and press Ctrl+Shift+S in the Press new shortcut key box. Word will assign it because it is saved in a different template. However, this assignment works only when that template is loaded. To make it global, copy the macro to Normal.dotm as described in the main steps.
If the Shortcut Still Opens the Apply Styles Pane
If after running the assignment macro the Apply Styles pane still appears, the built-in shortcut may be cached. Try these fixes.
Word Still Shows the Apply Styles Pane After Running the Macro
Close Word entirely. Navigate to %appdata%\Microsoft\Templates and find Normal.dotm. Rename it to Normal.old. Restart Word. A new Normal.dotm is created. Now repeat steps 1 through 5 above. This clears any corrupted shortcut data in the old template.
The Macro Does Not Appear in the Macros Dialog
Open the VBA editor again and confirm the macro is in the Normal project under Modules. If it is inside a different project like Project (Document1), move it to Normal by cutting and pasting the code into a new module under Normal. Macros must be in Normal.dotm to be available globally.
Word Online vs Desktop: Shortcut Customization Differences
| Item | Word Desktop (Windows) | Word Online |
|---|---|---|
| Supports custom macros | Yes | No |
| Can reassign built-in shortcuts | Yes via VBA workaround | No |
| Shortcuts stored in | Normal.dotm or custom template | Not applicable |
| Apply Styles pane default shortcut | Ctrl+Shift+S | Ctrl+Shift+S (cannot change) |
Word Online does not support VBA macros. You cannot reassign any keyboard shortcuts in Word Online. The Ctrl+Shift+S shortcut always opens the Styles pane. All customization described in this article applies only to the desktop version of Word on Windows.
You can now reassign Ctrl+Shift+S to run your own macro. Use the VBA assignment macro as the primary method. If the shortcut reverts after a Word update, run the AssignShortcut macro again. For advanced control, consider storing your macros and assignments in a separate global template loaded as an add-in to avoid modifying Normal.dotm directly.