A macro recorder app captures a sequence of actions so you can repeat them automatically; in desktop Excel for Microsoft 365 on Windows, the built-in Record Macro tool turns many worksheet actions into a VBA macro. Excel for the web does not record or run VBA macros, so choose a desktop recorder for VBA or use Office Scripts in the browser for supported spreadsheet tasks.
What a macro recorder app does
A macro is a reusable set of instructions. A recorder creates those instructions while you work: you start recording, perform a task, and stop. In Excel, the result is usually VBA code, which you can save and run later. You do not need to write code to make a simple recorded macro, although editing the generated code can make it more reliable.
For example, if you regularly receive a sales sheet with an unwanted top row, inconsistent number formatting, and columns that need resizing, you could record the cleanup once. Running the macro can repeat the recorded commands on another sheet. That is different from a screen video: an Excel macro usually represents workbook actions and commands, not a replay of every mouse movement as pixels.
People also use macro recorder to mean software that automates actions across desktop applications. Such tools may record keystrokes, mouse clicks, or window interactions. They are not interchangeable with Excel’s recorder: a desktop automation tool can work beyond spreadsheets, while an Excel VBA macro is designed for Excel’s object model and workbook tasks.
How Excel’s recorder works
On Windows, open a workbook and select Developer > Code > Record Macro. If Developer is missing, use File > Options > Customize Ribbon, then select the Developer checkbox. Give the macro a short name without spaces, choose where to store it, and optionally assign a shortcut. After selecting OK, carry out the steps you want captured, then select Developer > Code > Stop Recording.
The recorder translates supported actions into VBA statements. The starting cell, selected range, and whether references are relative can affect what those statements do when replayed. If you record formatting while cell B2 is active, for instance, the macro may target that particular cell unless relative references are enabled and used appropriately.
Excel’s Developer tab includes Use Relative References. With it off, recorded commands commonly refer to specific cells; with it on, recorded movements can be relative to the active cell. This setting is useful when the same operation must be applied to different starting positions, but it does not make every macro universally reusable. Test on a copy and inspect the resulting range before relying on it.
To run a saved macro, select Developer > Code > Macros, choose its name, and select Run. On Windows, Alt+F8 opens the Macro dialog. The macro must be stored in a workbook that supports VBA, or in the Personal Macro Workbook if you want it available across workbooks on that computer.
Saving and sharing recorded macros
A workbook containing VBA needs a macro-enabled file format, usually Excel Macro-Enabled Workbook (.xlsm). Saving it as a standard .xlsx workbook removes the VBA project; Excel warns about this when you try to save. If a macro should travel with a particular workbook, save the file as .xlsm and share that file with a clear explanation of what the macro does.
When recording, Excel offers three main storage choices. This Workbook stores the macro in the current file. New Workbook stores it in a separate workbook. Personal Macro Workbook stores it in a hidden workbook that opens for your Excel account on that computer, making the macro available for other workbooks there. A personal macro workbook is not automatically included when you send someone else a spreadsheet.
A recorded macro can also be reviewed or changed in the Visual Basic Editor, opened from Developer > Code > Visual Basic. The generated code can reveal whether the macro selects a specific sheet, refers to fixed cells, or assumes a certain workbook layout. Avoid editing code unless you understand the change, and keep an untouched backup when adjusting important automation.
What recorders capture—and what they miss
Excel’s recorder is useful for visible, repeatable operations such as applying number formats, setting column widths, entering a formula, or copying and pasting a range. It can provide a practical starting point for a small VBA routine and help a beginner see how some Excel actions map to code.
It is less suited to tasks that depend on changing conditions or varied data layouts. A recorded macro may contain fixed cell addresses, repeated selections, or assumptions about which sheet is active. If a new file has an extra column, a different number of rows, or a differently named sheet, the old sequence might act on the wrong cells or stop with an error.
- Good fit: the same set of steps is repeated on workbooks with a consistent layout.
- Needs review: the data size changes, a macro must choose between cases, or the workbook structure varies.
- Wrong tool: the task requires a macro to run in Excel for the web, where VBA cannot run.
Recording is not the same as designing a robust automation. A person can notice that a column is missing or a date is invalid; a recorded sequence may simply carry on. Add checks, error handling, and clearer rules in code when the process is important or must handle unpredictable input.
Choosing a macro recorder app
Start with the application and task, not the word recorder. If you only need to repeat formatting or cleanup in Excel desktop, the built-in recorder may be enough and avoids installing an additional program. If the task crosses several Windows applications, a desktop automation tool may be more appropriate. If the work is in browser-based Excel, consider Office Scripts where the feature is available.
- Check platform: confirm Windows, Mac, or browser support, and whether the tool controls Excel specifically or the whole desktop.
- Check the output: Excel’s recorder produces VBA; other tools may save a script, a workflow, or recorded mouse and keyboard events.
- Check reliability: prefer automation that can identify a worksheet, table, or named range over one that depends on fixed screen coordinates.
- Check access and policy: work or school computers may restrict add-ins, scripts, macros, or automation software.
- Check maintenance: ask whether you can inspect, edit, export, and document the automation if the original creator leaves.
For a small task performed by one person, a built-in feature is often simpler than a paid automation product. For a shared process, maintainability, permissions, and the ability to handle exceptions matter more than how quickly the first recording can be made.
Excel on Mac and Excel for the web
Excel for Mac also includes VBA macro support and a macro recorder in desktop editions, though ribbon layout, settings, and keyboard shortcuts can differ from Windows. If a Windows walkthrough gives a shortcut that does not work on your Mac, use the Developer tab’s Macros or Record Macro commands instead. Test shared VBA macros on the operating systems where they will be used; platform-specific integrations and file paths can cause differences.
Excel for the web can open and edit many workbooks that contain macros, but it cannot create, run, or edit VBA macros. A macro-enabled file may therefore need to be opened in desktop Excel to use its VBA. In supported Microsoft 365 environments, the Automate tab offers Office Scripts, including Record Actions for capturing certain spreadsheet operations. Office Scripts use TypeScript rather than VBA, have different capabilities, and should not be assumed to reproduce an existing VBA macro automatically.
Common problems and safer use
If a macro seems to do nothing, check that it was saved in the workbook you are using and that the file is still .xlsm. Confirm that the macro is listed in Developer > Macros and that macros are permitted by your organization’s settings. If it runs on the wrong cells, inspect whether it recorded fixed addresses or relative actions and whether the active sheet and starting cell are what the macro expects.
Macros can contain code that changes files, data, or application settings. A recording made by you is not inherently dangerous, but a macro-enabled attachment from an unknown sender deserves caution. Do not enable macros just because a document asks you to. Follow your organization’s security policy, verify the sender and purpose, and use trusted sources. On managed devices, do not try to bypass restrictions set by an administrator.
Before running a macro on important information, save a separate copy of the workbook and test the routine on sample data. Excel does not provide a general Ctrl+Z undo for actions performed by a VBA macro; closing without saving may be the only way to discard unwanted changes, and that can also discard other work. A backup is therefore more dependable than expecting to reverse a macro afterward.
Costs and alternatives
Excel’s recorder is part of desktop Excel rather than a separate recorder app with its own subscription. Whether desktop Excel is available depends on the Microsoft 365 plan or Office license in use. Excel for the web is available through Microsoft’s web offering, but its lack of VBA execution means it is not a free browser substitute for running desktop macros. Check the features and terms of your own account before choosing a workflow.
Not every repeated task needs a macro. Excel features such as tables, built-in sorting and filtering, conditional formatting, and Power Query can be easier to maintain for recurring data work. Formulas can also calculate results without automating a sequence of interface actions. For supported cloud workflows, Office Scripts may be a better browser-based alternative; for cross-application desktop tasks, use an approved automation tool designed for that environment.
Choose the simplest method that meets the need. If a task is just applying a consistent format, a macro can help. If it is importing and reshaping recurring data, Power Query may make the steps clearer. If several people need a dependable process, document the source files, expected layout, output, and recovery plan whichever tool you choose.
Frequently Asked Questions
Is there a free macro recorder app for Excel?
Desktop Excel includes a built-in recorder when the installed edition supports VBA, so a separate recorder app is not required. Access to desktop Excel depends on your license. Excel for the web does not run VBA macros.
Can I record a macro in Excel for the web?
You cannot record or run VBA macros in Excel for the web. In supported Microsoft 365 accounts, you may be able to use Automate > Record Actions to create an Office Script, which is a different kind of automation.
Do I need to know VBA to use a macro recorder?
No. You can record and run a basic sequence without writing VBA. Understanding a little VBA helps when the recording uses fixed cells, needs adjustments, or must handle different workbook layouts.
Why does my recorded macro work only on one sheet?
The recording may refer to a specific worksheet, cell, or workbook. Check the macro in the Visual Basic Editor, verify the active sheet and starting position, and test any changes on a copy before using the macro on important data.
Can I undo a macro with Ctrl+Z?
Generally, no. Excel’s normal undo history does not reliably reverse VBA macro actions. Save a backup copy before running a macro that changes data or workbook structure.
Related
- Excel Text to Columns Shortcut: Windows and Mac
- Excel Text to Columns: Split Cells at Line Breaks Easily
- Excel Text to Columns by Word: Methods That Work
Try it: the Column Letter to Number: aA is 27, XFD is 16,384. Converts both ways.
More in VBA & macros
- Move a Picture in an Excel UserForm with the MouseTo move a picture around an Excel UserForm with the mouse, handle the Image control’s MouseDown and MouseMove…
- MS Project VBA: How to Find the Windows OS VersionIn Microsoft Project for Windows, use Windows Management Instrumentation (WMI) from VBA to read the operating system’s name,…
- Excel VBA Enum: How It Works and When to Use ItAn Excel VBA Enum is a named set of numeric constants: it lets code use readable labels such…
- Google Sheets Macros: How They Work and How to Use ThemYes. Google Sheets has macros: you can record a sequence of spreadsheet actions and replay it later, or…
- Excel VBA: Check If AutoFilter Is Active on a SheetIn Excel VBA, check Worksheet.AutoFilterMode to find out whether AutoFilter arrows are displayed, and check Worksheet.FilterMode to find…
- How to List All Files in a Folder Using Excel VBATo list files directly inside a folder in Excel for Microsoft 365 on Windows, run a VBA macro…
Sources: Function behaviour and menu paths: Microsoft Support documentation for Excel. Method & sources
Spotted an error in this guide? Let us know.