Problème de protection à la fin d'une macros dans selectionchange

micky01

XLDnaute Occasionnel
Bonsoir à tous,

J'ai un souci dans une macros pour la reprotection de ma feuille à la fin de l'exécution de ma macros.
Il me met une erreur de compilation : utilisation incorrecte de la propriété.

Est-il possible de protecger une feuille dans un tel évenement ou pas?

Merci par avance.
 

Gorfael

XLDnaute Barbatruc
Re : Problème de protection à la fin d'une macros dans selectionchange

Salut micky01 et le forum
Est-il possible de protecger une feuille dans un tel évenement ou pas?
Non, on ne peut pas protecger dans une macro évènementielle ! Mais on peut tout à fait protéger une feuille ou un classeur :p.

Quand on utilise une macro (évènementielle ou non) sur une feuille protégée, le plus simple reste d’enlever la protection, de faire le traitement voulu, puis de re-protéger en sortie.
Il me met une erreur de compilation : utilisation incorrecte de la propriété.
Excel a vraisemblablement raison !
Excel fait toujours ce que tu lui demandes et quelques fois ce que tu veux !
Avec plus de 90 postes, tu devrais te douter qu'avec ce que tu mets, on n'est pas en possibilité de t'aider !!!
A+
 

Pierrot93

XLDnaute Barbatruc
Re : Problème de protection à la fin d'une macros dans selectionchange

Bonjour à tous,

A noter éégalement, pour que le code puisse s'exécuter sur feuille protégée sans avoir à déprotéger / protéger la feuille, il y a lieu d'effectuer la protection via vba en utilisant l'argument "userinterfaceonly". Code ci-dessous à utiliser dans le module "thisworkbook", se déclenche à l'ouverture du classeur :
Code:
Option Explicit
Private Sub Workbook_Open()
Feuil1.Protect "toto", userinterfaceonly:=True
End Sub

bonne journée
@+
 

micky01

XLDnaute Occasionnel
Re : Problème de protection à la fin d'une macros dans selectionchange

Bonjour Pierrot,

A noter éégalement, pour que le code puisse s'exécuter sur feuille protégée sans avoir à déprotéger / protéger la feuille, il y a lieu d'effectuer la protection via vba en utilisant l'argument "userinterfaceonly". Code ci-dessous à utiliser dans le module "thisworkbook", se déclenche à l'ouverture du classeur :
Code:
Option Explicit
Private Sub Workbook_Open()
Feuil1.Protect "toto", userinterfaceonly:=True
End Sub

Ca c'est très intéressant :) Y'at'il un moyen rapide d'appliquer cette protection à l'ouverture sur l'ensemble des feuilles du classeur?

A plus
 

Pierrot93

XLDnaute Barbatruc
Re : Problème de protection à la fin d'une macros dans selectionchange

Re,

ceci bouclera sur toutes tes feuilles de calcul :
Code:
Option Explicit
Private Sub Workbook_Open()
Dim ws
For Each ws In Worksheets
    ws.Protect "toto", userinterfaceonly:=True
Next ws
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 466
Messages
2 088 675
Membres
103 917
dernier inscrit
skullym