empêcher un éffacement sous condition

  • Initiateur de la discussion Initiateur de la discussion andré
  • 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 !

A

andré

Guest
Salut à vous tou(te)s,

Je cherche à empêcher d'effacer une valeur contenue dans une cellule si une autre cellule en contient une.

Exemple :
Je veux effacer la valeur en B1
Si A1 contient une valeur, l'effacement m'est refusé (avec ou sans message d'erreur)
Si A1 est vide, je puis effacer.

J'ai eu beau essayer par Validation, mais sans y parvenir.
Il me semble que par VBA (évenementielle) cela doit être possible, mais là je jette l'éponge !
Même les idées saugrenues sont les bienvenues (lol).

Ândré.
 
Salut André,

En VBA, cela donnerait quelque chose comme ça :

'en code général de la feuille
Dim Tampon

Private Sub Worksheet_Activate()
Tampon = Range("B1")
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
If Target.Value = "" Then
If Range("A1").Value <> "" Then
Target = Tampon
MsgBox "Effacement impossible"
End If
Else
Tampon = Target
End If
End If
End Sub

La variable Tampon retient la valeur de B1 à chaque changement.
Lorsque l'évènement change survient, l'effacement de la donnée contenue en B1 s'est déjà produit. Donc, si l'effacement est interdit, on rétablit B1 avec la valeur Tampon.
CQFD

A+
LN
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour