2016-05-31 1 views
0

En fonction de deux conditions d'entrée, je souhaite être en mesure de sortir 1 des 4 valeurs de sortie. Par exemple lors de la vérification des correspondances entre deux tables, je voudrais être en mesure d'accéder à une fonction comme:Créer une table de vérité des résultats dans une formule Excel

=TRUTHTABLE(condition1,condition2,true-true,true-false,false-true,false-false)

faire quelque chose comme:

=TRUTHTABLE(MATCH(value,array1,0),MATCH(value,array2,0),"Good","Missing","Redundant","Good") 

Les deux options que je suis venu avec tant loin sont:

=IF(condition1,IF(condition2,true-true,true-false),IF(condition2,false-true,false-false))

ou:

=CHOOSE(1--condition1*2--condition2,false-false,false-true,true-false,true-true)

L'option 1 est lourde à maintenir en raison de la répétition de condition2, et l'option 2 est compliquée à comprendre pour les futurs responsables. Je suis actuellement en train de m'orienter vers l'option 2, mais est-ce que quelqu'un connaît une meilleure option?

+0

vous ne traitez avec 4 options pour sa relativement faible à gérer. vous pouvez écrire la table en 4 lignes et 3 colonnes, les résultats possibles de la colonne A de condition1 correspondent aux résultats possibles de la condition 2 dans la colonne B. Chaque paire/ligne forme un identifiant unique. Ensuite, il suffit de regarder votre table pour la ligne où la condition 1 et la condition 2 sont vraies et retourner le résultat de la colonne C dans la rangée correspondante. –

+0

Si j'utilisais la formule juste une ou deux fois cela pourrait fonctionner, mais j'ai l'intention de faire répéter ceci dans chaque rangée d'une colonne de plusieurs centaines de cellules. – Mark

+0

[Une façon potentiellement plus simple de gérer plusieurs résultats si résultat] (http://stackoverflow.com/questions/37459915/check-for-combinations-in-excel/37463146#37463146) au lieu d'entrer dans une table IF nest. Tant que vos quatre résultats possibles restent les mêmes, vous devriez pouvoir copier la formule à côté de votre colonne de données. –

Répondre

0

Avec les entrées de A1 et B1:

=LOWER(A1&"-"&B1) 

A1 par exemple peut contenir:

=NOT(ISERROR(MATCH(value,array1,0)))