i

Conditions complexes dans "données validité"


il n'est apparemment pas possible dans "données validité" d'avoir des conditions complexes du style :

"la valeur est soit numérique et alors comprise entre deux bornes ou égale à A ou E" ce qui sous Ms

( et je le confirme pour Marie jo Ooo cela fonctionne bien sous Ms) se traduit par :

"données validation", "personnalisée"

=(OU(ET(S2>=0;S2<=200);S2="A";S2="E"))

A part passer par une macro (ce que je voudrais éviter), quelqu'un aurait-il une idée pour empêcher

la saisie de données non valides.

J'ai proposé un formatage conditionnel qui colore en rouge la cellule si elle est mal saisie, mais comme

c'est juste visuel, cela ne satisfait pas l'utilisateur.


Les deux seules solutions qui me viennent à l'esprit sont:

1) autoriser le validité pour le contenu d'une plage de données qui ne

contient que les valeurs autorisées (nous en avions déjà parlé)

2) travailler sur deux colonnes, une pour gérer les valeur numériques

comprises entre deux bornes (cela fait partie des options du menu "validité")

et une autre pour gérer les lettres en choisissant l'option liste du menu

validité.

Après, pour l'esthétique il est possible de concatener le contenu des deux

colonnes pour obtenir l'apparence d'une seule.Mais cela impose une zone de

saisie et une autre pour l'affichage au cas où le document devrait-être

imprimer par exemple.


J'y avais pensé mais cela oblige l'utilisateur à saisir dans une colonne si la valeur est numérique et

dans une autre pour les lettres. Vu que ce sont des résultats de tests avec une bonne dizaine de thèmes

cela fait vingt colonnes de saisies plus les dix de concaténation . Cela me parait bien lourd.


restons réaliste ! combien de temps faut-il pour créer la liste des valeurs

autorisées dans une colonne puis affecter cette colonne à la validité?


il est tout à fait possible de tirer sur une cellule vers le bas pour obtenir

toutes les valeurs numériques possible (même avec des décimales à deux

chiffres). Si j'écris en A1 *0.01* puis en A2 *0.01* en A3 *=A$1+A2* et que

je tire la cellule A3 vers le bas j'obtiens bien une liste de nombres

décimaux à deux chiffres incrémenté par un pas de 0.01, il suffit d'ajouter à

cette liste les lettres A et E et ça le fait. Ceci étant, je ne conteste pas

que la fonctionnalité de MS$ parait plus souple et compacte, mais cela

n'enlève rien au résultat attendu et permet donc de continuer à mettre OOo en

valeur.


Et pourquoi pas passer par une validité "plage de cellule" avec tous les cas

possibles, soit les valeurs de 0 à 200 et A et E dans la plage ?


à quoi servent les lignes B4 et B5 dans la feuille3 ?


à rien, il s'agit d'une erreur car dans un premier temps je cherchais à

décompter à partir de la borne max et je ne me suis pas aperçu que ces lignes

étaient restées lorsque j'ai changé d'avis. Désolé.


TestValiditeClaude.ods