An Excel add-in can be really useful when you have to run a macro often in different workbooks.
For example, suppose you want to highlight all the cells that have an error in it, you can easily create an Excel add-in that will highlight errors with a click of a button.
Something as shown below (the macro has been added to the Quick Access Toolbar to run it with a single click):
Similarly, you may want to create a custom Excel function and use it in all the Excel workbooks, instead of copy pasting the code again and again.
If you’re interested in learning VBA the easy way, check out my Online Excel VBA Training.
Creating an Excel Add-in
In this tutorial, you’ll learn how to create an Excel add-in. There are three steps to create an add-in and make it available in the QAT.
- Write/Record the code in a module.
- Save as an Excel Add-in.
- Add the macro to the Quick Access Toolbar.
Write/Record the Code in a Module
In this example, we will use a simple code to highlight all the cells that have error values:
Sub HighlightErrors() Selection.SpecialCells(xlCellTypeFormulas, xlErrors).Select Selection.Interior.Color = vbRed End Sub
If you are writing code (or copy-pasting it from somewhere), here are steps:
- Open an Excel Workbook.
- Press Alt + F11 to open the VB Editor Window.
- In the VB Editor, you would see the workbook objects listed in the project explorer. If you can’t see that, go to View –> Project Explorer.
- Right-click on any of the objects in the workbook. Go to Insert option and click on ‘Module’. This will insert a module object.
- Double-click on the module and enter the above code (copy-paste it).
- Press Alt+F11 to go back to the Excel Worksheet.
Note: If you are recording a macro, Excel automatically takes care of inserting a module and putting the code in it.
Now let’s go ahead and create an add-in out of this code.
Save and Install the Add-in
Follow the below steps when you are in the workbook where you have inserted the code.
- Click the File tab.
- Click on ‘Save As’.
- In the Save As dialogue box, change the ‘Save as’ type to .xlam. The name you assign to the file would be the name of your add-in. In this example, the file is saved with the name Highlight Errors.
- You’ll notice that the path of the file where it gets saved automatically changes. You can use the default one or change it if you want.
- Open an Excel workbook and Go to Developer –> Add-ins –> Excel Add-ins.
- In the Add-ins dialogue box, browse and locate the file that you saved, and click OK.
Now the add-in has been activated.
You may not see any tab or option appear in the ribbon, but the add-in gets activated at this stage and the code is available to be used now.
The next step is to add the macro to the Quick Access Toolbar so that you can run the macro with a single click.
Note: If you are creating an add-in that has a custom function, then you don’t need to go to step 3. By the end of step 2, you’ll have the function available in all the workbook. Step 3 is for such codes, where you want something to happen when you run the code (such as highlight cells with errors).
Save and Install the Add-in
To do this:
- Right-click on any of the ribbon tabs and select Customize Quick Access Toolbar.
- In the Excel Options dialog box, Select Macros from the Choose commands from the drop-down. You’ll notice that the macro ‘HighlightErrors’ is listed there.
- Click on the ‘HighlightErrors’ Macro and click on Add. This will add the macro to the list on the right.
- Click OK. This will add the macro to the Quick Access Toolbar.
Now to run this code in any workbook, select the dataset and click on the macro icon in the QAT.
This will highlight all the cells with errors in red color. You can also use this macro in any workbook since you have enabled the add-in.
Caution: The changes done by the macro can’t be undone using Control + Z.
You can also create custom functions and then save it as an Excel add-in. Now, when you enable the add-in, the custom functions would be available in all your Excel workbooks.
You May Also Like the Following Excel Tutorials:
- Working with Cells and Ranges in Excel VBA.
- Working with Worksheets in VBA.
- Working with Workbooks in VBA.
- Using Loops in Excel VBA.
- Using IF Then Else Statement in Excel VBA.
- How to Create and Use Personal Macro Workbook in Excel.
- Useful Excel Macro Code Examples.
- Using For Next Loop in Excel VBA.
- Excel VBA Events – An Easy (and Complete) Guide.
- Excel VBA Error Handling