How to: 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.

To protect a workbook

  1. 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.

    No code example is currently available or this language may not be supported.

To unprotect a workbook

  1. 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.

    No code example is currently available or this language may not be supported.

To protect a workbook

  1. 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.

    No code example is currently available or this language may not be supported.

To unprotect a workbook

  1. 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.

    No code example is currently available or this language may not be supported.

Working with Workbooks
How to: Programmatically Protect Worksheets
How to: Programmatically Hide Worksheets
Optional Parameters in Office Solutions

Show: