How to protect pivot table in Excel?
In Excel, how could we protect the pivot table to prevent other users dragging the fields or messing up the layout? This article, I will talk about some methods to protect the pivot table in worksheet.
Excel Productivity Tools
Office Tab: Bring powerful tabs to Office (include Excel), just like Chrome, Safari, Firefox and Internet Explorer. Save you half the time, and reduce thousands of mouse clicks for you. 30-day Unlimited Free Trial
Kutools for Excel: Save 70% of your time and solve 80% Excel problems for you. 300+ advanced features designed for 1500+ work scenario, make Excel much easy and increase productivity immediately.60-day Unlimited Free Trial
The following VBA code can help you to protect the pivot table, please do as this:
1. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
2. Click Insert > Module, and paste the following code in the Module Window.
VBA code: protect pivot table
Sub RestrictPivotTable() 'Updateby Extendoffice 20161026 Dim xpf As PivotField Application.ScreenUpdating = False With ActiveSheet.PivotTables(1) .EnableDrilldown = False .EnableFieldList = False .EnableFieldDialog = False .PivotCache.EnableRefresh = False For Each xpf In .PageFields With pf .DragToPage = False .DragToRow = False .DragToColumn = False .DragToData = False .DragToHide = False End With Next xpf End With Application.ScreenUpdating = False MsgBox "The pivot table has been protected!", vbInformation, "Kutools for Excel" End Sub
3. Then press F5 key to run this code, and a prompt box will pop out to remind you the pivot table has been protected, see screenshot:
1. This code will disable many of the features in a pivot table, such as preventing users from dragging any of the fields to a different location, and disabling the Field List, Field Settings, Drilldown, and the Refresh feature.
2. If there are multiple pivot tables in active sheet, this code is only applied to the last pivot table.
Sometimes, you may want to protect the pivot table but allowing access to the slicer for applying the filter function, the following steps can do you a favor.
1. After inserting the slicer, then right click it, and choose Size and Properties from the context menu, see screenshot:
2. In the Format Slicer pane, click Properties to expand the options, and then uncheck Locked option, see screenshot:
3. Then close the pane, and then click Review > Protect Sheet to protect this sheet, see screenshot:
4. In the popped out Protect Sheet dialog box, then check Select unlocked cells and Use PivotTable & PivotChart options only in the Allow all users of this worksheet to list box, and then enter the password and confirm it, see screenshot:
5. Then click OK button to close the dialogs, and now, when you click the pivot table report and try to change it, it will not be modified, but you can apply the Slicer feature as you need.