vba et protection de feuilles

Vilain

XLDnaute Accro
Bonjour à tous,

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 ?

A plus

Gillus
 

Pièces jointes

  • test.xls
    276 KB · Affichages: 45
  • test.xls
    276 KB · Affichages: 53
  • test.xls
    276 KB · Affichages: 44

Pierrot93

XLDnaute Barbatruc
Re : vba et protection de feuilles

Bonjour,

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

bonne soirée
@+
 

Vilain

XLDnaute Accro
Re : vba et protection de feuilles

Salut à vous et merci de votre aide.

@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 ?

Gillus
 

Vilain

XLDnaute Accro
Re : vba et protection de feuilles

Re,

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 ?
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re : vba et protection de feuilles

Bonsoir Gillus, le Fil, le Forum

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...

Bien à toi
@+Thierry
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : vba et protection de feuilles

Bonjour Gillus, Thierry:)

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...
OK également sous 2003...

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

bonne journée
@+
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re : vba et protection de feuilles

Bonjour Pierrot, Gillus

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 !

Bonne journée
@+Thierry
 

Vilain

XLDnaute Accro
Re : vba et protection de feuilles

Bonjour à tous,

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.

Gillus

ps : les mots de passe sont "toto"
 

Pièces jointes

  • test MAJ et protection.xlsm
    103.7 KB · Affichages: 38
  • test MAJ et protection.xls
    235 KB · Affichages: 37
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 427
Messages
2 088 303
Membres
103 813
dernier inscrit
mehdifr