Bonjour!

J'ai retrouvé ce post d'il y a plusieurs années déja qui m'est actuellement très utile! Parcontre, je bute sur un problème probablement très simple, mais qui m'échappe!
Le code fonctionne très bien dans la mesure où on indique "OUI" à la main dans la colonne 3.

Parcontre, si le "OUI" provient d'une formule "SI", la macro ne fonctionne pas (ce qui est le cas dans mon fichier). Ex: en colonne 3 j'ai la formule =SI($A$1=1;"OUI";"NON")

Comment adapter ce code pour que la phrase If UCase(target) = "OUI" tienne compte du résultat de la formule et non juste du mot "OUI" écris à la main??

J'ai essayé de mettre comme formule en colonne 3 =TEXTE(SI($A$1=1;"OUI";"NON");Texte), mais sans résultat

Est-ce parcequ'une formule qui renvoie un résultat différent n'est pas considéré comme un événement "Change"??

Je suis un peu perdue

Merci à l'avance de votre précieuse aide!!!

Citation Envoyé par aJavaDeveloper Voir le message
J'ai utilisé le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub Worksheet_change(ByVal target As Range)
    If target.Column = 3 Then
        ActiveSheet.Unprotect
        If UCase(target) = "OUI" Then
            target.Offset(0, -1).Locked = True
            target.Offset(0, -1).Value = "LOCKED"
        Else
            target.Offset(0, -1).Locked = False
            target.Offset(0, -1).Value = "UNLOCKED"
        End If
        ActiveSheet.Protect
    End If
End Sub
et il fonctionne très bien !!!
Merci beaucoup pour ton aide...