Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 verrouillage de cellule

florian140001

XLDnaute Nouveau
Bonsoir, voilà dans une cellule j'ai une liste et dans cette liste je voudrai que quand 'A' est choisi la case à côté d'elle soit verrouiller
savez vous comment faire ?
 

job75

XLDnaute Barbatruc
Re, salut Calvus,

Bof puisque vous ne voulez pas indiquer le mot de passe ce sera "toto", le code de la feuille :

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Protect "toto", UserInterfaceOnly:=True
Set Target = Intersect(Target, UsedRange)
If Target Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Application.EnableEvents = False 'désactive les évènements
For Each Target In Target 'si entrées multiples (copier-coller
    If Target.Column > 1 And LCase(Target) = "chaise" Then Target(1, 0).Locked = True 'verrouille la cellule à gauche
Next
Application.EnableEvents = True 'réactive les évènements
End Sub
Bien sûr les cellules où l'on fait les choix doivent avoir été préalablement déverrouillées.

A+
 

job75

XLDnaute Barbatruc
En fait puisque la macro ne modifie pas le contenu des cellules les Application.EnableEvents sont inutiles :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Protect "toto", UserInterfaceOnly:=True
Set Target = Intersect(Target, UsedRange)
If Target Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For Each Target In Target 'si entrées multiples (copier-coller
    If Target.Column > 1 And LCase(Target) = "chaise" Then Target(1, 0).Locked = True 'verrouille la cellule à gauche
Next
End Sub
 

Discussions similaires

Réponses
2
Affichages
210
Réponses
11
Affichages
297
Réponses
12
Affichages
362
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…