Sometimes we may want to lock opened workbook and prevent other users from adding, modifying or deleting worksheets, for this instance, we can apply ‘Protect Workbook’ feature to implement this. If you want to just prevent others from inserting a new worksheet, you can also edit VBA code to make others cannot do this operation. So, in this article, we will introduce you above two ways to protect workbook, you can select either of them to meet your request.
Method 1: Prevent Users from Adding New Worksheet by Protect Workbook Feature
Open workbook1, verify that there are seven worksheets.
Now let’s lock this workbook and stop users to add new worksheet.
Step 1: Click Review in the ribbon, click Protect Workbook under Protect group.
Step 2: On Protect Structure and Window dialog, enter password, verify that Structure option under ‘Protect workbook for’ section is checked by default. Then click OK.
Step 3: After clicking OK, Confirm Password dialog pops up. Re-type password and click OK. Now opened workbook is protected.
Step 4: On any worksheet name tab, right click to load sheet related settings. You can see that operations like ‘Insert’, ’Delete’ etc. are disabled. So, users cannot add new worksheet now.
Method 2: Prevent Users from Adding New Worksheet by Edit VBA Code
Step 1: On current visible worksheet, right click on sheet name tab to load Sheet management menu. Select View Code, Microsoft Visual Basic for Applications window pops up.
Or you can enter Microsoft Visual Basic for Applications window via Developer->Visual Basic. You can also press Alt + F11 keys simultaneously to open it.
Step 2: Select ‘ThisWorkbook’ in the left panel under Microsoft Excel Objects folder. See screenshot below.
Step 3: Enter below code into this workbook module.
Private Sub Workbook_NewSheet(ByVal Sh As Object) With Application Application.ScreenUpdating = False Application.DisplayAlerts = False Sh.Delete Application.DisplayAlerts = True Application.ScreenUpdating = True End With MsgBox "You cannot add a new worksheet" End Sub
Step 4: Save code and quit Microsoft Visual Basic for Applications.
Step 5: Right click on sheet name and click ‘Insert’ to add a new worksheet. Verify that below message pops up. The content is we just defined in VBA code. Now users include yourself cannot insert a new worksheet now.