Rapport de message :*
 

Re: test saisie Oui Non dans cellule.

Titre du sujet : Re: test saisie Oui Non dans cellule.
par JeanMarie le 01/10/2011 21:33:51

Bonsoir ramarc, Didier, le forum

Pour éviter de de contredire Didier sur une possible solution sans VBA.

Je n'ai pas réussi à reproduire ton problème de référence circulaire que tu signalais dans ton premier post, perso je suis parti sur l'utilisation du contrôle "liste" de la boîte de dialogue "données de validation" cela a peut-être son importance sur le problème.

Je te livre ce que je suis arrivé à faire, après de nombreux essais, en ne mettant les conditions dans la formule de la "liste" de validation, j'y suis arrivé, mais avec un défaut si les deux cellules étaient vide, je pouvais saisir n'importe quoi sans recevoir d'excel un message d'erreur de saisie non valide.

Je suis donc passé par des étapes intermédiaires pour supprimer ce défaut.

Dans ta feuille, indique les valeurs O et N dans deux cellules contigues, ensuite il faut déclarer des 3 plages de cellules de ces valeurs. 
Pour exemple, place la valeur N dans la cellule F1, la valeur O dans la cellule F2. Ajoute par la boîte de dialogue "Définir un nom" (Menu Insertion/Nom/Dénfir...), le nom OUI faisant référence à =Feuil1!$F$2, puis clique sur le bouton ajouter. Procède de la même manière pour le nom NON à =Feuil1!$F$1, et le nom NO à =Feuil1!$F$1:$F$2

Pour ce qui est des conditions qui vont permettre le contrôle des valeurs saisies. Tu vas aussi rajouter des Nom, mais cela ne sera pas des plages de cellules qui y feront référence mais ce seront des formules.
Revient sur la boîte de dialogue d'insertion de nom, rajoute un nom CelluleA et la formule 
=SI(Feuil1!$B$1="";NO;SI(Feuil1!$B$1="O";OUI;NO))
et un autre nom CelluleB avec la formule 
=SI(Feuil1!$A$1="";OUI;SI(Feuil1!$A$1="N";NON;NO))
Tu peux fermer la boîte il n'y aura plus de nom à définir.

La chose qui reste à faire est de créer la liste de validation pour les deux cellules, Pour A1 la formule dans la liste de validation est =CelluleA et pour la cellule B1 la formule est =CelluleB.

Maintenant tu procèdes aux essais.

@+Jean-Marie