Bonjour à toutes et à tous,
je cherche à limiter les actions possibles sur les différents items de tableaux croisés dynamiques.
Notamment avec l’instruction EnableFieldList = False, je veux que le destinataire ne puisse pas cliquer sur les menus déroulants des TCD (année, client, calibre etc.)
Que ce soit sur une feuille en particulier ou toutes (comme je l’espère avec la boucle créée), ça ne marche pas, on peut toujours cliquer sur les champs donc mon code est sans effet
Qui peut me dire où ça pêche ? (j’utilise ici un with … end with car normalement, j’ai beaucoup d’instructions mais en l’occurrence, je me focalise sur une car elle ne fonctionne pas …)
Merci d'avance
______________________ Code restant sans effet ____________________________________
Sub Geler_les_champs()
Dim sh As Long
Dim pt As PivotTable
For sh = 1 To Sheets.Count ' on balaie toutes les feuilles
Sheets(sh).Activate
If ActiveSheet.PivotTables.Count > 0 Then ' pour éviter un plantage si pas de tcd dans la feuille
With ActiveSheet.PivotTables(1)
.EnableFieldList = False ' on interdit l'accès aux champs
End With
End If ' fin du test si tcd
Next ' on passe à la feuille suivante
End Sub
je cherche à limiter les actions possibles sur les différents items de tableaux croisés dynamiques.
Notamment avec l’instruction EnableFieldList = False, je veux que le destinataire ne puisse pas cliquer sur les menus déroulants des TCD (année, client, calibre etc.)
Que ce soit sur une feuille en particulier ou toutes (comme je l’espère avec la boucle créée), ça ne marche pas, on peut toujours cliquer sur les champs donc mon code est sans effet
Qui peut me dire où ça pêche ? (j’utilise ici un with … end with car normalement, j’ai beaucoup d’instructions mais en l’occurrence, je me focalise sur une car elle ne fonctionne pas …)
Merci d'avance
______________________ Code restant sans effet ____________________________________
Sub Geler_les_champs()
Dim sh As Long
Dim pt As PivotTable
For sh = 1 To Sheets.Count ' on balaie toutes les feuilles
Sheets(sh).Activate
If ActiveSheet.PivotTables.Count > 0 Then ' pour éviter un plantage si pas de tcd dans la feuille
With ActiveSheet.PivotTables(1)
.EnableFieldList = False ' on interdit l'accès aux champs
End With
End If ' fin du test si tcd
Next ' on passe à la feuille suivante
End Sub