複数の基準を満たす条件に対してテキストを返す条件式を設定するにはどうすればよいですか?

複数の基準を満たす条件に対してテキストを返す条件式を設定するにはどうすればよいですか?

これを機能させるために、さまざまな数式のさまざまな組み合わせを試しましたが、どこから始めればよいのかさえわかりません。そのため、最初から始めます。私が何をしようとしているのかを皆さんに簡単に説明するために、完全に架空のシナリオの画像を示します。

基本的に、私がやろうとしているのは、1 つの列にあるすべてのコードを「青」、「緑」、または「茶」のいずれかにすることです。シナリオは次のようになります。誰かが、従業員の目の色が識別/記録されたことを確認するための「BIO DATA 1」というフィールドを作成するように依頼します。最初は、目の色のデータが収集されたことを示すチェックボックスのみがフィールドに追加されていました。

その後、従業員の目が青い場合は、戻ってチェックボックスを「青」に再コード化するように求められました。さらに後で、ラベルをもっと説明的なものにした方が意味が明確になると言われ、戻って茶色の目と緑の目の従業員にもラベルを割り当てるように求められました。

緑色の目の人もコード化したい人がいるかもしれないと予想して、緑色の目の人用に別の列を作成しましたが、茶色の目の人には作成していませんでした。さらに、「GREEN」というラベルの付いた列に一意の識別子を使用せず、チェックボックスのマークをそのまま使用していました。

ここでやりたいことは、すべてを 1 つの列にまとめ、1 つの数式を使用して、目の各色にラベルを付ける列を作成することです。D2 で使用できる数式を使用し、十字線をダブルクリックして、その数式を下にコピーします。

たいていの人は「どんな数式を試しましたか?」と尋ねます。そこで、私が使用したと思われる数式をいくつか紹介します。

=IF(EXACT(C2, B2), "GREEN", "BROWN") または IF(B2="BLUE"), "BLUE")

=IF(EXACT(C2, B2), "緑") または IF((B2="青", "青")), "茶色"

=IF(C2=B2)、"緑"、"茶色") または IF(B2="青")、"青")

=IF(C2=B2)、"緑"、"茶色") または IF(B2="青")、"青")

=IF(AND((ISERROR(MATCH(C2, B2, 0) & IF(B2<>"BLUE"), "BROWN") OR IF(C2=B2, "GREEN", "BLUE")

これらはほんの一部です。それぞれが、私の数式に誤りがあることを示しています。上記で紹介したもの以外にもいろいろ試しましたが、キー入力に至るまで、何を試したかは思い出せませんし、誰かの役に立つかどうかもわかりません。これらは主に、他の問題で他の人が私に答えてくれた答えや、さまざまな Web ページで見た数式を寄せ集めたものです。実を言うと、当初はこれよりずっと早く機能する数式を見つけられると思っていたので、途中で試行錯誤を追うことはしませんでした。

明らかに何かが欠けています。何が間違っているのでしょうか? さらに重要なのは、この問題を解決する最も簡単で効率的な方法は何ですか?

ちなみに、この問題を解決するには、並べ替えとコピーと貼り付けを使用して列を操作するか、列の一部に 1 つの数式を使用し、残りの部分に別の数式を使用しますが、1 つの数式だけを使用してこれを行う方法をぜひ学びたいと思っています。これができると、いつか役に立つかもしれません。お勧めの方法はありますか?

問題になる場合は、Excel 2007 で機能する数式/ソリューションが必要です。

答え1

私は今、自分の問題を必要以上に複雑にしていたことに気付きました...情報が多すぎると、効果が薄れることがあります。スーパーで私が受けた問題に対する本当に素晴らしい解決策のすべては、ユーザー、これを機能させるために必要なのは次の式を使用するだけであることに気づくまで、しばらく時間がかかりました。

=IF(B2="青", "青", IF(B2<>C2, "茶色", IF(B2=C2, "緑", "")))

これで完了です。とても簡単です。正しく実行されれば、完了すると次のようになります。

この種の数式についてさらにサポートが必要な場合は、次のリンクを参照してください。これらのリンクは、私がこの問題に使用した数式をまとめるのに役立ちました。

Excel で AND、OR、NOT を使用してネストされた IF ステートメントを使用する方法

If(AND) の組み合わせでは、「この関数に入力した引数が多すぎます」というエラーが発生します。

関連情報