Programmatically protect workbooks
You can protect a Microsoft Office Excel workbook so that users cannot add or delete worksheets, and also unprotect the workbook programmatically. You can optionally specify a password, indicate whether you want the structure protected (so users cannot move sheets around), and indicate whether you want the workbook's windows protected.
Applies to: The information in this topic applies to document-level projects and VSTO Add-in projects for Excel. For more information, see Features available by Office application and project type.
Protecting a workbook does not stop users from editing cells. To protect the data, you must protect the worksheets. For more information, see How to: Programmatically protect worksheets.
The following code examples use a variable to contain a password that is obtained from the user.
Protect a workbook that is part of a document-level customization
To protect a workbook
Call the Protect method of the workbook and include a password. To use the following code example, run it in the
ThisWorkbook
class, not in a sheet class.
To unprotect a workbook
Call the Unprotect method, passing a password if it is required. To use the following code example, run it in the
ThisWorkbook
class, not in a sheet class.
Protect a workbook by using an application-level Add-in
To protect a workbook
Call the Protect method of the workbook and include a password. This code example uses the active workbook. To use this example, run the code from the
ThisAddIn
class in your project.
To unprotect a workbook
Call the Unprotect method of the active workbook, passing a password if it is required. To use this example, run the code from the
ThisAddIn
class in your project.