Application.ThisWorkbook property (Excel)

Returns a Workbook object that represents the workbook where the current macro code is running. Read-only.



expression A variable that represents an Application object.


Use this property to refer to the workbook that contains your macro code. ThisWorkbook is the only way to refer to an add-in workbook from inside the add-in itself. The ActiveWorkbook property doesn't return the add-in workbook; it returns the workbook that's calling the add-in.

The Workbooks property may fail, as the workbook name probably changed when you created the add-in. ThisWorkbook always returns the workbook in which the code is running.

For example, use code such as the following to activate a dialog sheet stored in your add-in workbook:


This property can be used only from inside Microsoft Excel. You cannot use it to access a workbook from any other application.


This example closes the workbook that contains the example code. Changes to the workbook, if any, aren't saved.

ThisWorkbook.Close SaveChanges:=False

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.