XL 2013 Utiliser une liste et interdire les doublons dans la saisie des données

evelyn

XLDnaute Nouveau
Je souhaite utiliser la validation des données et combiner deux conditions:
- "Liste" afin de figer les informations à saisir dans une cellule
- "Personnalisée" pour pouvoir interdire les doublons avec les formule: =NB.SI($A$1:$A$5;A1)=1

Est-il possible ? si non comment pourrais-je garder la possibilité de ne saisir que les informations d'une liste et
éviter les doublons
 

evelyn

XLDnaute Nouveau
Bonjour
Je ne comprends pas votre fichier. Je vais vous aider à mieux comprendre mon souci en utilisant votre fichier.
Dans la cellule H2, choisissez "a" sur la liste déroulante. Ensuite faites en sorte que vous ayez également une liste déroulante dans la cellule I2 mais qu'en même temps, vous ne puissiez plus choisir "a" car étant un doublon par rapport à H2.
 

djidji59430

XLDnaute Barbatruc
Tu ne fais pas fonctionner comme tu l'as demandé.

si tu choisis "a" dans une cellule (par la liste), le a disparait de la liste proposée (d'ailleurs tu le vois en colonne C) pour les autres cellules.
Si tu ecris dans les cellules, la liste n'as pas de sens !
 

evelyn

XLDnaute Nouveau
Non ce n'est pas ce que j'ai exprimé. Je souhaite qu'il soit interdit de mettre un autre "a" puisque déjà présent dans la cellule précédente. J'avais bien utilisé le terme "interdire". Je vais faire plus simple.
Vous voyez le champ liste dans validation des données: Il permet de choisir une valeur dans une liste. Ce qui est une bonne chose. Mais vous voyez aussi le champ "personnalisé" toujours dans validation des données. Lui permet autre autres de bloquer les doublons. Alors comment avoir les deux champs en même temps dans une cellule. A priori ce n'est pas possible techniquement. Et c'est ce que je ne conçois pas car on peut très bien avoir besoin d'avoir une liste déroulante dans une cellule (liste) mais en même temps faire en sorte que dans cette cellule on puisse pas entrer une valeur déjà présente ailleurs (personnalisé). Comme faire ???
 

evelyn

XLDnaute Nouveau
Bonjour

Il semble que ca marche. Je t'en remercie infiniment. En revanche, impossible de savoir comment tu as procédé. Je ne saurais dupliquer toutes ces fonctions dans ma feuille sans comprendre le cheminement que tu as adopté. Un petit cours m'aiderait beaucoup. D'ailleurs je n'ai jamais compris la fonction DECALER dans les noms.
 

djidji59430

XLDnaute Barbatruc
Je ne sais pas si ça vaut le coup si ça ne fait que sembler marcher. Attends plutôt une solution qui fonctionne !
Cependant ......
Le principe, c'est que nativement, si tu écris un mot différent de ta liste, Excel t'envoie un message.
Par contre, si tu laisses un blanc (cas d'une liste ou un élément a disparu de la plage de ta liste) , tu peux écrire n'importe quoi, Excel ne râle pas. Donc ta liste ne doit comporter que les noms restants.ce qui se fait avec decaler(la cellule de départ;nb de lignes; nb de colonne; hauteur de ta plage;largeur de ta plage.
decaler(a1;0;0) ==>a1
decaler(a1;1;0) ==>a2
decaler(a1;0;1) ==>b1

decaler(a1;0;0;5;1) ==>plage a1:a5
decaler(a1;0;0;1;5) ==>plage a1:e1
decaler(a1;0;0;2;5) ==>plage a1:e2

mais tous les nb peuvent être obtenus par des résultat de fonction.
Ce qui te permet de créer des plages dynamiques. Pour des listes en casade par exemple


Crdlmt
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa