Verrouillage automatique des cellules dans excel [Résolu]

arthurvoirin 15 Messages postés vendredi 8 septembre 2017Date d'inscription 13 décembre 2017 Dernière intervention - 29 sept. 2017 à 16:48 - Dernière réponse :  félix
- 3 oct. 2017 à 14:31
Bonjour,
j'aurais voulu savoir si quelqu'un aurait la solution avec une formule ou autre technique pour verrouiller les cellules a mesures qu'elles se remplissent.

Je vous remercie d'avance,
Arthur.
Afficher la suite 

16 réponses

Répondre au sujet
via55 8799 Messages postés mercredi 16 janvier 2013Date d'inscription 15 décembre 2017 Dernière intervention - 29 sept. 2017 à 16:55
0
Utile
1
Bonjour

Par formule pas possible, il faut passer par une macro en VBA mais c’est dangereux car la macro sera déclenchée par la touche entrée et plus moyen de corriger si on s'est trompé
Est ce ce que tu veux malgré tout ?

Cdlmnt
Via
arthurvoirin 15 Messages postés vendredi 8 septembre 2017Date d'inscription 13 décembre 2017 Dernière intervention - 29 sept. 2017 à 16:58
Re-bonjour,
merci d'avoir répondu si rapidement, si cela ne te déranges pas et que cela ne te prends pas trop de temps je veux bien la formule...

Bien sincèrement
Arthur
Commenter la réponse de via55
ccm81 8204 Messages postés lundi 18 octobre 2010Date d'inscription 12 décembre 2017 Dernière intervention - 29 sept. 2017 à 17:01
0
Utile
1
Bonjour

Il faudra passer par une macro
http://www.cjoint.com/c/GIDpbpn7KjB

Cdlmnt
arthurvoirin 15 Messages postés vendredi 8 septembre 2017Date d'inscription 13 décembre 2017 Dernière intervention - 29 sept. 2017 à 17:18
Bonjour,
en essayant de modifier le code, je me suis aperçu qu'il m'était impossible de le changer; que cela soir la plage, que de le combiner avec une autre macro... Quand j'essai de changer la plage, par exemple A1:D20 à A1:E20, excel me répond que la feuille est verrouillée et qu'il m'est alors impossible de modifier les cellules de E1 à E20...
Aussi, lorsque j'essai d'integrer le code avec un autre, la feuille se verrouille tout de suite après avoir entré une valeur et il n'est alors plus possible d'entrer quelque chose

Merci d'avance,
Arthur
Commenter la réponse de ccm81
ccm81 8204 Messages postés lundi 18 octobre 2010Date d'inscription 12 décembre 2017 Dernière intervention - Modifié par ccm81 le 29/09/2017 à 17:33
0
Utile
1
Quand j'essai de changer la plage, par exemple A1:D20 à A1:E20, excel me répond que la feuille est verrouillée et qu'il m'est alors impossible de modifier les cellules de E1 à E20...
La première chose à faire c'est de déprotéger "à la main" la feuille (mot de passe MDP)
Dans mon exemple, seuloe la plage A1:D20 est déverrouillée au départ.
la feuille se verrouille tout de suite après avoir entré une valeur et il n'est alors plus possible d'entrer quelque chose
C'est ce que tu as demandé non ? d'ailleurs via55 (que je salue au passage)
En fait, le verrouillage d'une cellule ne fonctionne que si la feuille est protégée

Cdlmnt
arthurvoirin 15 Messages postés vendredi 8 septembre 2017Date d'inscription 13 décembre 2017 Dernière intervention - 29 sept. 2017 à 17:38
Problème résolu !
Merci de ton investissement...

Bonne fin de journée
Arthur
Commenter la réponse de ccm81
via55 8799 Messages postés mercredi 16 janvier 2013Date d'inscription 15 décembre 2017 Dernière intervention - 29 sept. 2017 à 17:34
0
Utile
9
Re,

1) Selectionner toutes les cellules de la feuille (triangle en haut à gauche entre les barres de titres horizontale et verticale) - Format de cellule - Protection - Décocher Verrouillée

2) Protéger la feuille (Onglet Revision), éventuellement avec un mot de passe

3) ALT+F11 pour ouvrir l'éditeur VBA - Selectionner par double-clic la feuille sur laquelle agir dans arborescence à gauche - Copier et coller la macro ci-dessous dans la page et fermer l'éditeur
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect
Range(ActiveCell.Offset(-1, 0).Address).Locked = True
ActiveSheet.Protect
End Sub


Si la feuille a été protégée par un mot de passe indiquer ce mot de passe entre guillements après les instructions Unprotect et Protect :
ActiveSheet.Unprotect "toto"

Cdlmnt
Via
félix > BADIBA - 3 oct. 2017 à 14:14
J'ai complété ma réponse précédente ; merci de me dire si ça a marché.  ;)
BADIBA > félix - 3 oct. 2017 à 14:15
je viens juste de d'essayer avec

Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect "123"
ActiveCell.Locked = True
ActiveSheet.Protect "123"
End Sub
mais j'ai pas encor le résultat escorte.

si c'est pas trop de demander, je vous demanderais de me donner le processus au complet.

merci.
félix > BADIBA - 3 oct. 2017 à 14:19
 
Dis-moi ce que tu as dans « Options avancées » :

Cas 1 :
     ☐  Déplacer la sélection après validation

Cas 2 :
     ☑  Déplacer la sélection après validation
           Sens : Bas

Si autre, à préciser.

Je te demande ça car le code à utiliser dépend de l'option
que tu utilises réellement en pratique.

À te lire pour la suite.
 
BADIBA > BADIBA - 3 oct. 2017 à 14:24
Merciiiiiiiiiiiiiiiiiiiiiii

Ça a parfaitement fonctionne
je veux dire le fichier que je viens de telecharger.

mais j'aimerais avoir la technique pour réussir a le faire dans ma programmation.
si toutefois c'est possible envoyez moi la technique complète pour y arriver.
félix > BADIBA - 3 oct. 2017 à 14:31
 
L'utilisation de la sub Worksheet_Change() fait que son code est exécuté
chaque fois qu'une cellule de la feuille est modifiée ; ce code est très
simple (3 instructions courtes seulement) :

a) Déprotéger la feuille avec : ActiveSheet.Unprotect "123"
b) Verrouiller la cellule active : ActiveCell.Locked = True
c) Protéger la feuille avec : ActiveSheet.Protect "123"
 
Commenter la réponse de via55