а где "х" потеряли?))) должно же быть With xpf
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.
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 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.