Worksheet.Protect method (Excel)
Protects a worksheet so that it cannot be modified.
expression.Protect (Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly, AllowFormattingCells, AllowFormattingColumns, AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows, AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows, AllowSorting, AllowFiltering, AllowUsingPivotTables)
expression A variable that represents a Worksheet object.
|Password||Optional||Variant||A string that specifies a case-sensitive password for the worksheet or workbook. If this argument is omitted, you can unprotect the worksheet or workbook without using a password. Otherwise, you must specify the password to unprotect the worksheet or workbook. If you forget the password, you cannot unprotect the worksheet or workbook.
Use strong passwords that combine uppercase and lowercase letters, numbers, and symbols. Weak passwords don't mix these elements. Strong password: Y6dh!et5. Weak password: House27. Passwords should be 8 or more characters in length. A pass phrase that uses 14 or more characters is better.
It's critical that you remember your password. If you forget your password, Microsoft cannot retrieve it. Store the passwords that you write down in a secure place away from the information that they help protect.
|DrawingObjects||Optional||Variant||True to protect shapes. The default value is True.|
|Contents||Optional||Variant||True to protect contents. For a chart, this protects the entire chart. For a worksheet, this protects the locked cells. The default value is True.|
|Scenarios||Optional||Variant||True to protect scenarios. This argument is valid only for worksheets. The default value is True.|
|UserInterfaceOnly||Optional||Variant||True to protect the user interface, but not macros. If this argument is omitted, protection applies both to macros and to the user interface.|
|AllowFormattingCells||Optional||Variant||True allows the user to format any cell on a protected worksheet. The default value is False.|
|AllowFormattingColumns||Optional||Variant||True allows the user to format any column on a protected worksheet. The default value is False.|
|AllowFormattingRows||Optional||Variant||True allows the user to format any row on a protected worksheet. The default value is False.|
|AllowInsertingColumns||Optional||Variant||True allows the user to insert columns on the protected worksheet. The default value is False.|
|AllowInsertingRows||Optional||Variant||True allows the user to insert rows on the protected worksheet. The default value is False.|
|AllowInsertingHyperlinks||Optional||Variant||True allows the user to insert hyperlinks on the protected worksheet. The default value is False.|
|AllowDeletingColumns||Optional||Variant||True allows the user to delete columns on the protected worksheet, where every cell in the column to be deleted is unlocked. The default value is False.|
|AllowDeletingRows||Optional||Variant||True allows the user to delete rows on the protected worksheet, where every cell in the row to be deleted is unlocked. The default value is False.|
|AllowSorting||Optional||Variant||True allows the user to sort on the protected worksheet. Every cell in the sort range must be unlocked or unprotected. The default value is False.|
|AllowFiltering||Optional||Variant||True allows the user to set filters on the protected worksheet. Users can change filter criteria but can not enable or disable an auto filter. Users can set filters on an existing auto filter. The default value is False.|
|AllowUsingPivotTables||Optional||Variant||True allows the user to use PivotTable reports on the protected worksheet. The default value is False.|
In previous versions, if you apply this method with the UserInterfaceOnly argument set to True and then save the workbook, the entire worksheet (not just the interface) will be fully protected when you reopen the workbook. To re-enable the user interface protection after the workbook is opened, you must again apply this method with UserInterfaceOnly set to True.
If you want to make changes to a protected worksheet, it is possible to use the Protect method on a protected worksheet if the password is supplied. Also, another method would be to unprotect the worksheet, make the necessary changes, and then protect the worksheet again.
Unprotected means that the cell may be locked (Format Cells dialog box) but is included in a range defined in the Allow Users to Edit Ranges dialog box, and the user has unprotected the range with a password or has been validated via NT permissions.
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.