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

XL 2010 Autoriser la saisie dans une cellule sauf si une valeur est indiquée dans une autre cellule

  • Initiateur de la discussion Initiateur de la discussion Krimo76
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Krimo76

XLDnaute Nouveau
Bonjour,

Je souhaiterais pouvoir autoriser la saisie dans une cellule sauf si une autre cellule contient une valeur bloquante ("NON", "FAUX" ou autre valeur).

Dans ce cas ma cellule devra être à zéro et ne pas autoriser de modification (ou au pire m'indiquer une alerte que je paramétrerai)

J'ai essayé plusieurs choses en vain via la fonction SI, la validation des données et "Personnalisé" ... je n'y arrive pas !

Si quelqu'un peut m'aider svp, ça serait top.

Merci d'avance.
 
Solution
Alors allons y. 🙂
En PJ un essai avec cette petite macro événementielle :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A1:J1")) Is Nothing Then
        If Cells(3, Target.Column) = "NON" Then
            Cells(1, Target.Column) = 0
            MsgBox " Désolé! La cellule " & Target.Address & " est vérouillée" & Chr(10) & _
                    " par la précence du NON dans la cellule correspondante en ligne 3."
        End If
    End If
End Sub
là il faut du VBA et Sylvanu pourra certainement t'aider

ou quelquechose du genre =si(A3="NON";0;l'autre calcul"
Si la valeur est entrée "en dur" et ne provient pas d'un calcul seul le VBA le permettra.
Cordialement
 
Alors allons y. 🙂
En PJ un essai avec cette petite macro événementielle :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A1:J1")) Is Nothing Then
        If Cells(3, Target.Column) = "NON" Then
            Cells(1, Target.Column) = 0
            MsgBox " Désolé! La cellule " & Target.Address & " est vérouillée" & Chr(10) & _
                    " par la précence du NON dans la cellule correspondante en ligne 3."
        End If
    End If
End Sub
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…