J'ai un petit problème de protection.
Je souhaiterai que toutes mes feuilles soient protégées et que seuls les filtres auto soient actifs.
Le problème se pose si je les protège manuellement, mes macros ne fonctionnent plus.
Comment faire ?
Salut Gillus69,
en macro ajoute ceci 1=l'index ici
Sheets(1).EnableAutoFilter = True
et si tu protèges en manuel Coche [Autoriser les filtres]
Bruno . . . de la région
essaye peut être ceci à placer dans le module "thisworkbook" :
Code:
Option Explicit
Private Sub Workbook_Open()
Dim ws As Worksheet
For Each ws In Worksheets
With ws
.EnableAutoFilter True
.Protect "toto", userinterfaceonly:=True
End With
Next ws
End Sub
@bruno : Avec ta solution, il faut que j'ajoute ça à toutes mes macros, non ?
@Pierrot : En utilisant ta solution, j'ai une erreur dès l'ouverture du fichier. Comment remédier à ce problème ?
j'avais effectivement des feuilles protégées.
Une fois les protections enlevées, j'ai une erreur sur la ligne : .EnableAutoFilter True
Je suis en xlsm, le problème vient-il de la ?
Si tu va dans l'aide VBA sous 2007 on peut trouver ceci comme exemple :
Code:
Sub ProtectionOptions()
ActiveSheet.Unprotect
' Allow pivot tables to be manipulated on a protected worksheet.
If ActiveSheet.Protection.AllowUsingPivotTables = False Then
ActiveSheet.Protect AllowUsingPivotTables:=True
End If
MsgBox "Pivot tables can be manipulated on the protected worksheet."
End Sub
Donc on peut aussi manipuler la Protection en laissant les PivotTables (TCD en Français) autorisés.
Juste une remarque, pas sûr que ca passe sous 2003, mais si tu es en XLSM c'est que l'on parle de 2007 ou 2010 au moins...
de ce fait on pourrait peut être modifier la procédure ainsi :
Code:
Option Explicit
Private Sub Workbook_Open()
Dim ws As Worksheet
For Each ws In Worksheets
With ws
.EnableAutoFilter = True
.Protect "toto", userinterfaceonly:=True, AllowUsingPivotTables:=.PivotTables.Count > 0
End With
Next ws
End Sub
Merci de cette confirmation pour 2003, en fait par moment on finit par ne plus être sûr de ce que les versions "encaissent" au fur et à mesure des versions, et tout tester sur tous les environnements c'est du taff !
J'ai toujours mon problème de mise à jour des TCD malgré votre aide.
Je joins mon fichier tel qu'il est, sachant qu'il est normalement en xlsm et que je suis sous 2007.
Merci d'avance pour votre aide.