Bloquer des cellules après saisie

Bonjour à tous,

Je viens vers vous car j'ai un soucis lorsque je code en VBA ma plage de cellule sur un fichier Excel.

Je voudrais empêcher la modification de celles-ci par mot de passe une fois les cellules saisie et validé, or lorsque je code depuis VBA Excel ça me génère une erreur sur la page VBA et les cases restent modifiable après saisi.

-Mot de passe Azerty0123 (Temporaire)

-La plage de cellule à bloquer après saisie à été sélectionner et créer avec comme nom attribué AA

-Code utilisé pour codé la plage :

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("AA")) Is Nothing Then

Me.Unprotect Azerty0123

Target.Locked = True

Me.Protect Azerty123

End If

End sub

D'après les vidéos et tutos que j'ai pu voir ça aurait dû fonctionner.

Merci d'avance de votre aide.

Bonjour

Teste comme ceci

Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
    Me.Unprotect "Azerty0123"
    Target.Locked = True
    Me.Protect "Azerty123"
  End If
End Sub

Bonjour,

Merci d'avoir pris le temps de me répondre.

Je vous met le fichier sa sera surement plus simple. MDP pour ôter la protection de la feuille = Azerty0123

Lorsque j'utilise votre code les cellule reste modifiable. par contre si je modifie votre code (Target, Range ("A:A)) en (Target, Range ("AA)) ça me génère la même erreur qu'au début avec les ligne code que j'utilisais :

erreur d’exécution "1004"

Impossible de définir la propriété Locked de la classe Range.

vba excel 1

Fonction débogage

vba excel 2

Merci de votre retour.

Rechercher des sujets similaires à "bloquer saisie"