Bonsoir dakama, Eric_C, Nicolas 65, le Forum.
dakama, peut-être n'ai-je rien compris à la discussion (et si c'est le cas, je m'en excuse par avance), mais j'ai cru comprendre que tu souhaitais bloquer tes cellules avec
Sheets(1).EnableSelection = xlUnlockedCells sans pour autant avoir recours à la protection de la feuille... si c'est effectivement le cas, je t'informe que ça ne peut marcher. La propriété
EnableSelection ne prend effet
que si la feuille est protégée et n'a aucun effet dans le cas contraire.
Par ailleurs, il est tout à fait possible de verrouiller des cellules pour empêcher toute modification de l'utilisateur tout en permettant aux macros VBA d'agir sur ces dernières, grâce au paramètre
UserInterfaceOnly = True de la méthode
Protect.
En résumé, si j'ai bien compris ton problème, je pense que le code ci-dessous placé dans l'évènement
Workbook_Open() de l'objet
ThisWorkbook, devrait répondre à ta question :
With Worksheets(1)
.EnableSelection = xlUnlockedCells
.Protect Password:="MotDePasse", UserInterfaceOnly:=True
End With
Cordialement.
Didier_mDF