Comment protéger un tableau croisé dynamique dans Excel ?
Dans Excel, comment pouvons-nous protéger le tableau croisé dynamique pour empêcher d'autres utilisateurs de faire glisser les champs ou de perturber la mise en page ? Dans cet article, je vais discuter de quelques méthodes pour protéger le tableau croisé dynamique dans une feuille de calcul.
Protéger le tableau croisé dynamique avec du code VBA
Protéger le tableau croisé dynamique tout en permettant l'accès au segment
Protéger le tableau croisé dynamique avec du code VBA
Le code VBA suivant peut vous aider à protéger le tableau croisé dynamique, veuillez procéder comme suit :
1. Maintenez les touches ALT + F11 enfoncées pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insérer > Module, puis collez le code suivant dans la fenêtre Module.
Code VBA : protéger le tableau croisé dynamique
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. Appuyez ensuite sur la touche F5 pour exécuter ce code, et une boîte de dialogue apparaîtra pour vous rappeler que le tableau croisé dynamique a été protégé, voir capture d'écran :
Remarques :
1. Ce code désactivera de nombreuses fonctionnalités du tableau croisé dynamique, telles que l'empêchement pour les utilisateurs de faire glisser des champs vers un autre emplacement, ainsi que la désactivation de la Liste des champs, des Paramètres des champs, du Perçage et de la fonction Actualiser.
2. S'il y a plusieurs tableaux croisés dynamiques dans la feuille active, ce code ne s'appliquera qu'au dernier tableau croisé dynamique.
Protéger le tableau croisé dynamique tout en permettant l'accès au segment
Parfois, vous souhaiterez peut-être protéger le tableau croisé dynamique tout en permettant l'accès au segment pour appliquer la fonction de filtrage ; les étapes suivantes peuvent vous aider.
1. Après avoir inséré le segment, faites un clic droit dessus, puis choisissez Taille et Propriétés dans le menu contextuel, voir capture d'écran :
2. Dans le volet Format du segment, cliquez sur Propriétés pour développer les options, puis décochez l'option Verrouillé, voir capture d'écran :
3. Fermez ensuite le volet, puis cliquez sur Révision > Protéger la feuille pour protéger cette feuille, voir capture d'écran :
4. Dans la boîte de dialogue Protéger la feuille qui apparaît, cochez Sélectionner les cellules non verrouillées et Utiliser uniquement les options Tableau croisé dynamique et Graphique croisé dans la liste Autoriser tous les utilisateurs de cette feuille de calcul, puis entrez le mot de passe et confirmez-le, voir capture d'écran :
5. Cliquez ensuite sur le bouton OK pour fermer les dialogues, et maintenant, lorsque vous cliquez sur le rapport du tableau croisé dynamique et essayez de le modifier, il ne sera pas modifié, mais vous pouvez utiliser la fonction Segment selon vos besoins.
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !