Merle tente d’utiliser la fonctionnalité de validation des données d’Excel pour limiter ce qu’un utilisateur peut choisir dans une cellule. Lorsque l’utilisateur active une cellule, il veut seulement une réponse Oui, Non ou N / A; il ne veut pas que l’utilisateur puisse sortir de la cellule et la laisser vide (vide). Merle a mis en place une liste des valeurs acceptables (Oui, Non et N / A) et a décoché la case Ignorer les blancs lors de la configuration de la validation des données.

Le problème est que lorsque quelqu’un active la cellule, il lui est possible de la laisser encore vide. Le seul moment où Excel ne permettra pas à la personne de laisser la cellule vide est si elle commence à modifier la cellule et essaie de la laisser vide après la modification. Merle souhaite, une fois la cellule sélectionnée, que l’utilisateur ne puisse absolument quitter la cellule que s’il choisit Oui, Non ou N / A.

La validation des données, à elle seule, ne peut pas s’en occuper. Cependant, il existe plusieurs façons de contourner le problème. La première idée est de modifier les options que vous donnez à l’utilisateur. Par exemple, disons que vous ajoutez un quatrième choix de « Fournir une réponse ». Vous pouvez ensuite modifier la valeur de la cellule avec la même valeur et enregistrer votre classeur. Lorsque l’utilisateur l’ouvre, la cellule contient « Fournir une réponse » et, une fois qu’il a sélectionné la cellule, il ne pourra pas la supprimer; ils devront fournir une réponse.

Une autre option consiste à utiliser une macro en conjonction avec la validation des données que vous avez configurée. La méthode la plus simple consiste à configurer un gestionnaire d’événements à chaque fois que la sélection change dans la feuille de calcul. L’exemple suivant entre en jeu si la sélection de cellule est C22 (c’est là que devrait également se trouver votre validation de données).

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim rng As Range     Set rng = Range("C22")

If Application.Intersect(Target, rng) Is Nothing Then         MsgBox "You must select the answer from the list"

End If End Sub

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (8767) s’applique à Microsoft Excel 97, 2000, 2002 et 2003.