Problème de menu déroulant non respecté

Piroullino Messages postés 1 Statut Membre -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je travail avec excel 2010, je fait des liste déroulante dont les données sont dans une autre feuille du classeur. les noms des listes en question dont bien définies et mes listes fonctionnent.

Mon problème c'est que les choix des listes ne sont pas respecté, disont que le choi dans la liste est : Pas éligible . Je voudrais que ce choix soit ecris EXACTEMENT de cette façon.

Nous sommes plusieurs a travailler sur les feuilles une fois que je les ai créer. comme mes liste sont plutot courte nous tapons souvent le mot que nous voulons au lieu de choisir le bon terme dans la liste déroulante. je mattendrais donc a ce qui est tapé soit refuser s'il n'est pas écris exactement dans le format spécifier dans la liste.

C'est là mon problème ma liste accepte (pas éligible) en minuscule. alors que je veux qu'il soit écris Pas éligible.

je vous remercie de me répondre car cette situation me cause beaucoup de problème une fois que je veux faire la compilation des données de plusieurs classeurs.

Merci

Piroullino

5 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    Bonjour Piroullino, Raymond,

    Je ne pense pas que l'on puisse contrôler la casse dans les listes déroulantes au moment de la saisie car contrairement à la fonction tri par exemple, la validation n'a pas cette option.

    Ce que je peux te proposer c'est de mettre une mise en forme conditionnelle "dissuasive" (police rouge sur fond rouge par exemple) sur tes colonnes concernées avec une formule du genre :

    =ET(A1<>"";NON(EXACT(RECHERCHEV(A1;liste;1;0);A1)))

    4
  2. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    Ce n'est hélas pas possible (sauf peut-être par macro), car le logiciel ne traite que la syntaxe des termes de la liste, et pas leur format.
    0
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour à tous,

    une proposition en vba :
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim liste As Range
        If Intersect(Target, [A2:A4]) Is Nothing Or Target.Count > 1 Then Exit Sub
        If Target = "" Then Exit Sub
        Set liste = Range(Mid(Target.Validation.Formula1, 2))
        Application.EnableEvents = False
        Target = Application.Index(liste, Application.Match(Target, liste, 0))
        Application.EnableEvents = True
    End Sub 

    https://www.cjoint.com/c/CCmorEQzyY4

    eric
    0
  4. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    Utiliser le message d'alerte arrêt et cela devrait bloquer les entrées hors liste
    Prendre l'habitude de renseigner la liste et non la cellule de la liste déroulante
    -1
    1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
       
      Bonjour,

      Utiliser le message d'alerte arrêt et cela devrait bloquer les entrées hors liste

      As-tu vérifié cette contre vérité ?
      hors liste > OUI
      avec casse différente > NON
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    La liste déroulante sert-elle pour créer une données qui est recopier dans une base si oui dans une cellule intermédiaire mettre une rechercheV et c'est cette cellule qui sera utilisé pour entrer les données dans la base de données
    Créer une deuxiéme liste avec les libélés voulus et mettre une rechecheV pour ramener le mot entré dans la cellule de la liste déroulante c'est cette cellule intermédiaire qui sera copié et non le mot tapé dans la cellule avec le menu déroulant

    en C2 =RECHERCHEV(C1;G1:G10;1;FAUX)

    Ou C1 la cellule avec la liste déroulante
    G1:G10 votre liste
    -1