Written by Allen Wyatt (last updated August 30, 2023)
This tip applies to Excel 2007, 2010, 2013, 2016, 2019, and 2021
Brendon created a very simple macro to save the current workbook and close it. He then added an icon to the Quick Access Toolbar (QAT) for the macro. The macro works well if the user isn't in Edit mode in the worksheet. If, for example, a user enters data in a cell but never presses Enter or doesn't select a different cell, then the macro won't run. It's like the QAT icon is greyed out. Brendon wonders how he can get around this and force the macro to run.
Brendon has run up against one of the fundamental limitations of Excel—you cannot run a macro while you are in Edit mode. In fact, there are many things you cannot do while you are in Edit mode—for instance, most of the ribbon tools aren't available, and most shortcut keys won't work. Excel limits what you can do to only those things dealing with editing the cell contents.
The solution is to get out of Edit mode before running the macro. One easy way to do this is to (as Brendon points out) simply press Enter or press Tab to move to a different cell.
If training the user to do that is a bit too much, then you might place your macro somewhere else besides the QAT. The most effective approach would be to place a shape in your workbook and then attach the macro to that shape. (How to actually do this is a bit beyond the scope of this particular tip.) The shape—which you would need to design in a graphics program—could look a "button" that says something like "Click here to save and exit." The user, in clicking on the shape, would automatically leave Edit mode, which means the macro attached to the shape would run.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (13736) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and 2021.
Best-Selling VBA Tutorial for Beginners Take your Excel knowledge to the next level. With a little background in VBA programming, you can go well beyond basic spreadsheets and functions. Use macros to reduce errors, save time, and integrate with other Microsoft applications. Fully updated for the latest version of Office 365. Check out Microsoft 365 Excel VBA Programming For Dummies today!
Normally a macro is only calculated when you specifically tell Excel to calculate it. Some macros need to be calculated ...
Discover MoreYou may need to automatically generate unique numbers when you create new worksheets in a workbook. Here are a couple of ...
Discover MoreWhen creating an application in VBA for others to use, you might want a way for your VBA code to modify or delete other ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2020-02-08 15:25:19
John Mann
While it's possible to use a graphics programme to design a shape to be used as a button, it's not necessary (a tleast not in Excel 10).
On the Ribon, click "Insert" then "Shapes" Choose a shape you like, edit it in the way you desire, and the wished for text. Then right click the shape and from the context menu select "Assign Macro..." From now on you can either add an existing macro or create a new one.
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments