Dévérouiller cellule si condition
mahots
Messages postés
5
Statut
Membre
-
gbinforme Messages postés 14930 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 14930 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Voilà mon problème
J'ai un fichier sous excel 2007 dans lequel je propose une liste déroulante avec 3 modes de gestion d'argent, en colonne H:
Choix 1
Choix 2
Choix 3
En fonction du choix une somme à miser, en colonne I en découle (en fonction du budget de départ).
Cette colonne I est verrouillée pour que les formules de calcul en fonction du choix ne soient pas effacées par l'utilisateur.
Je souhaiterais rajouter un 4ème choix, "mise libre" et que l'utilisateur puisse lui même décider de la somme à miser.
la colonne I étant verrouillée, ma question est la suivante :
Peut-on déverrouiller une cellule sous condition?
C'est à dire déverrouiller I5 par exemple si H5=mise libre
Merci d'avance
Voilà mon problème
J'ai un fichier sous excel 2007 dans lequel je propose une liste déroulante avec 3 modes de gestion d'argent, en colonne H:
Choix 1
Choix 2
Choix 3
En fonction du choix une somme à miser, en colonne I en découle (en fonction du budget de départ).
Cette colonne I est verrouillée pour que les formules de calcul en fonction du choix ne soient pas effacées par l'utilisateur.
Je souhaiterais rajouter un 4ème choix, "mise libre" et que l'utilisateur puisse lui même décider de la somme à miser.
la colonne I étant verrouillée, ma question est la suivante :
Peut-on déverrouiller une cellule sous condition?
C'est à dire déverrouiller I5 par exemple si H5=mise libre
Merci d'avance
4 réponses
-
Pas avec une formule ni une commande.
Mais avec une macro, c'est peut-être faisable ; je n'en sais trop rien ...
-
Bonjour,
Comme le dit Raymond que je salue, il faut passer avec une macro événementielle comme celle ci-dessous. Si tu as mis un mot de passe, il faut le rajouter derrière tous les "..protect" précédé d'un espace :
Private Sub Worksheet_Change(ByVal sel As Range) If sel.Count = 1 And Not Intersect(sel, [H:H]) Is Nothing Then If sel.Value = "mise libre" Then Unprotect sel.Offset(0, 1).Locked = False Protect Else Unprotect sel.Offset(0, 1).Locked = True Protect End If End If End Sub -
Bonjour
merci pour vos réponses
mais je ne connais rien aux macros
je n'y arrive pas du tout
La macro ci dessus ne marche pas en tout cas impossible de saisir quoi que ce soit dans la cellule désirée. -
Bonjour,
Regardes un petit mode d'emploi et pour toi, il faut absolument mettre la macro dans la feuille concernée.