How to Protect or Unprotect Multiple Worksheets at Once in Excel

,

This post will guide you how to protect or unprotect multiple worksheets at once in Excel 2013/2016. How do I unprotect or protect all worksheet at the same time with VBA Macro in Excel. How to quickly unprotect multiple worksheets in Excel.

If you have few worksheets that need to be unprotected, you can click unprotect sheet one by one to unprotect it.  But if you need to unprotect multiple worksheets in your workbook, you should use VBA Macro to unprotect worksheet, otherwise, you will waste lots of time.

Protect Multiple Worksheets at Once with VBA Macro


If you want to protect multiple worksheets in your current workbook at once, you can use an Excel VBA Macro to achieve the result. Just do the following steps:

#1 open your excel workbook and then click on “Visual Basic” command under DEVELOPER Tab, or just press “ALT+F11” shortcut.

Get the position of the nth using excel vba1

#2 then the “Visual Basic Editor” window will appear.

#3 click “Insert” ->”Module” to create a new module.

convert column number to letter3

#4 paste the below VBA code into the code window. Then clicking “Save” button.

protect multiple worksheets1

Sub ProtectAllWorksheets()
    Dim ws As Worksheet
    Dim Pwd As String
    Pwd = InputBox("Enter your password to protect all worksheets", "Protect Worksheets")
    For Each ws In ActiveWorkbook.Worksheets
        ws.Protect Password:=Pwd
    Next ws
End Sub

#5 back to the current worksheet, then run the above excel macro. Click Run button.

protect multiple worksheets2

#6 Enter your password to protect all worksheets, and click Ok button.

protect multiple worksheets3

All worksheets in your current workbook have been protected with a password you typed.

Video: Protect Multiple Worksheets at Once

Unprotect Multiple Worksheets at Once with VBA Macro


Assuming that you have multiple worksheets that has been protected in your workbook, and you want to unprotect all protected worksheets at once, you can use the below VBA Macro to achieve the result. Just do the following steps:

#1 open your excel workbook and then click on “Visual Basic” command under DEVELOPER Tab, or just press “ALT+F11” shortcut.

Get the position of the nth using excel vba1

#2 then the “Visual Basic Editor” window will appear.

#3 click “Insert” ->”Module” to create a new module.

convert column number to letter3

#4 paste the below VBA code into the code window. Then clicking “Save” button.

unprotect multiple worksheets4

Sub UnProtectAllWorksheets ()
    Dim ws As Worksheet
    Dim Pwd As String
    Pwd = InputBox("Enter your password to unprotect all worksheets", "Unprotect Worksheets")
    On Error Resume Next
    For Each ws In Worksheets
        ws.Unprotect Password:=Pwd
    Next ws
    If Err <> 0 Then
        MsgBox "You have entered an incorect password. All worksheets could not " & _
"be unprotected.", vbCritical, "Incorect Password"
    End If
    On Error GoTo 0
End Sub

#5 back to the current worksheet, then run the above excel macro. Click Run button.

unprotect multiple worksheets5

#6 Enter your password to unprotect all worksheets, and click Ok button.

unprotect multiple worksheets6

All protected worksheets in  your current worksheet have been unprotect at once.

Video: Unprotect Multiple Worksheets at Once

Protect or Unprotect Specific Multiple worksheets with Specific Password


If you want to protect or unprotect some specific worksheets with specific password in your workbook, you can refer to the following Excel VBA macro:

Protect Specific Multiple Worksheets:

Sub protectSpecificWorksheet()
     Sheets("Sheet1").protect Password:="excelhow1"
     Sheets("Sheet2").protect Password:="excelhow2"
     Sheets("Sheet3").protect Password:="excelhow3"
    Sheets("Sheet4").protect Password:="excelhow4"
 End Sub

Unprotect Specific Multiple Worksheets:

Sub UnprotectSpecificWorksheet()
     Sheets("Sheet1").unprotect Password:="excelhow1"
     Sheets("Sheet2").unprotect Password:="excelhow2"
     Sheets("Sheet3").unprotect Password:="excelhow3"
     Sheets("Sheet4").unprotect Password:="excelhow4"
 End Sub

You need to change the worksheet names as you need, and changing the password for each worksheet as you need.

 

Leave a Reply