OVH Cloud OVH Cloud

protection de cellules

14 réponses
Avatar
christophe
Bonjour,
mon probl=E8me est le suivant:

Dans une feuille, j'ai besoin d'avoir des cellules=20
prot=E9g=E9es et d'autres pas. De plus, pour les cellules non=20
prot=E9g=E9es, j'aimerais pouvoir changer le format et=20
utiliser un filtre sans rien d=E9prot=E9ger.
J'ai essay=E9 de faire =E7a en d=E9bloquant les cellules que je=20
voulait non prot=E9g=E9es et en prot=E9geant ensuite la feuille.=20
Mais il devient alors impossible de changer de format ou=20
d'utiliser un filtre sur TOUTE la feuille.

D'avance merci.

10 réponses

1 2
Avatar
AV
Pour le filtre
Tu mets ton filtre sur la feuille (Feuil1), tu mets le code suivant ** dans le
module de ThisWorkbook, tu enregistres, tu fermes et réouvres

**
Private Sub Workbook_Open()
Feuil1.EnableAutoFilter = True
Feuil1.Protect Contents:=True
End Sub

Pour le format, faudra faire par macro

AV.
Avatar
papou
Bonjour AV
Au fait, tu as vu qu'avec Excel 2003, il est désormais possible dans les
options de protections de la feuille d'utiliser le filtre automatique ?

Cordialement
Pascal


"AV" a écrit dans le message de
news:
Pour le filtre
Tu mets ton filtre sur la feuille (Feuil1), tu mets le code suivant **
dans le

module de ThisWorkbook, tu enregistres, tu fermes et réouvres

**
Private Sub Workbook_Open()
Feuil1.EnableAutoFilter = True
Feuil1.Protect Contents:=True
End Sub

Pour le format, faudra faire par macro

AV.




Avatar
christophe
Merci bien AV mais j'ai l'impression qu'il y a une erreur
(ou alors j'ai mal fait la manip):
Lorsque je réouvre (en autorisant les macros) il y a le
message "Run-time error '424' Object required" et la 2e
ligne "Feuil1.EnableAutoFilter = True" est surlignée.

Est-ce que tu vois ce qui ne va pas ?

merci par avance

christophe

-----Message d'origine-----
Pour le filtre
Tu mets ton filtre sur la feuille (Feuil1), tu mets le
code suivant ** dans le

module de ThisWorkbook, tu enregistres, tu fermes et
réouvres


**
Private Sub Workbook_Open()
Feuil1.EnableAutoFilter = True
Feuil1.Protect Contents:=True
End Sub

Pour le format, faudra faire par macro

AV.


.



Avatar
AV
Au fait, tu as vu qu'avec Excel 2003, il est désormais possible dans les
options de protections de la feuille d'utiliser le filtre automatique ?


Achh... je me suis arrêté à XL2000 moi !

AV

Avatar
AV
Vraisemblablement un problème avec le nom vba de la feuille ??
Essaye un truc de ce style (précédé de la manip indiquée)

Private Sub Workbook_Open()
with sheets("Feuil1")
.EnableAutoFilter = True
.Protect Contents:=True
end with
End Sub

AV
Avatar
christophe
Cette fois-ci il n'y a plus de message d'erreur et la
feuille est bien protégée quand on l'ouvre. Par contre le
filtre est toujours inutilisable...

christophe

-----Message d'origine-----
Vraisemblablement un problème avec le nom vba de la
feuille ??

Essaye un truc de ce style (précédé de la manip indiquée)

Private Sub Workbook_Open()
with sheets("Feuil1")
.EnableAutoFilter = True
.Protect Contents:=True
end with
End Sub

AV



.



Avatar
AV
Cette fois-ci il n'y a plus de message d'erreur et la
feuille est bien protégée quand on l'ouvre. Par contre le
filtre est toujours inutilisable


Respecte bien le processus suivant :
La feuille est non protégée > appliquer le filtre > mettre le code au bon
endroit > enregistrer le classeur > fermer > réouvrir
Ca doit marcher ..

AV

Avatar
isabelle
c'est disponible également avec xl2002, ainsi que

Sélectionner des cellules verrouillées
Sélectionner des cellules déverrouillées
Format de cellule
Format de colonne
Format de ligne
Insérer des colonnes
Insérer des lignes
Insérer des liens hypertexte
Supprimer des colonnes
Supprimer des lignes
Trier
Utiliser un filtre automatique
Utiliser des rapports de tableau croisé dynamique
Modifier des objets
Modifier des scénarios

isabelle


Bonjour AV
Au fait, tu as vu qu'avec Excel 2003, il est désormais possible dans les
options de protections de la feuille d'utiliser le filtre automatique ?

Cordialement
Pascal

"AV" a écrit dans le message de
news:
Pour le filtre
Tu mets ton filtre sur la feuille (Feuil1), tu mets le code suivant **
dans le

module de ThisWorkbook, tu enregistres, tu fermes et réouvres

**
Private Sub Workbook_Open()
Feuil1.EnableAutoFilter = True
Feuil1.Protect Contents:=True
End Sub

Pour le format, faudra faire par macro

AV.






Avatar
C'est peut-être l'étape 'mettre le code au bon endroit'
qui ne va pas: je copie le code, je vais dans
Tools/Macro/Visual Basic Editor, je
sélectionne "ThisWorkbook" dans la fenêtre "Project -
VBAProject", je clique sur "View Code" pour avoir la
fenêtre principale vierge, j'y colle le code, j'enregistre
et je ferme la fenêtre Visual Basic.

christophe

-----Message d'origine-----
Cette fois-ci il n'y a plus de message d'erreur et la
feuille est bien protégée quand on l'ouvre. Par contre le
filtre est toujours inutilisable


Respecte bien le processus suivant :
La feuille est non protégée > appliquer le filtre >
mettre le code au bon

endroit > enregistrer le classeur > fermer > réouvrir
Ca doit marcher ..

AV


.




Avatar
Starwing
Achh... je me suis arrêté à XL2000 moi !

AV



Et moi qui croyait que tous les MVP's recevaient des
petits cadeaux gratuits de Microsoft pour leur superbe
conribution aux développements de leur produits...

Starwing

1 2