2016-10-14 11 views
2

私は列AIで列Aに3つの文字列(青、赤、緑)のいずれかをルックアップしようとしていていますチェックし、列Bに別の文字列を返す - エクセル

ROW1:

ROW2「ロバートはブルーのショートパンツを持っている」:

ROW3「マリアは赤いドレスを持っている」:

「ジョンはグリーン車を持っている」私は列のもの3つの言葉の一つ見つけるたびA、私は見つかったインスタンス(緑、赤、青)で列Bに値を設定したい。

これらの3つの単語のうちの1つが列Aに存在し、2つ以上ではないことがあります。また、単語の位置は文字列のどこにでも置くことができます。

私はこれをPythonまたはSQLに入れる方法を知っていますが、私はExcelに苦労しています。

過去にこれを使用した場合、誰も解決策を共有できますか?

+0

各行を評価しますか?それとも列のどこかで? –

+0

列Aに1行につき1つの文字列があります(それについて言及していないことをお詫び申し上げます)。 私は列Aの各行を評価し、列Bの対応する行ボックスに結果を入れようとしています。 上記の例では、列Bのrow1にBlue、row2 Red、row3 Greenが含まれています。私はあなたに手伝っていただきありがとうございます。 – Robert

答えて

3

あなたは、この配列数式を使用することができます

=INDEX({"Red","Blue","Green"},MATCH(TRUE,ISNUMBER(SEARCH({" Red "," Blue "," Green "}," " & A1 & " ")),0)) 

が編集モードを終了するとき、それはCtrl + Shift + Enterで確認しなければならない配列数式ビーイングを。正しく実行された場合、Excelは{}を数式の周りに置きます。注意点としては

enter image description here

また、範囲を参照して{"Red","Blue","Green"}を置き換えることができます。したがって、3つの単語がD1:D3の場合、式は次のようになります。

=INDEX($D$1:$D$3,MATCH(TRUE,ISNUMBER(SEARCH(" " & $D$1:$D$3 & " "," " & A1 & " ")),0)) 
+0

非常に興味深い。 ありがとうございます。 – Robert

+1

@ScottHoltzman今それはしません、私はOPにIFERRORの欲望を残しました。 –

関連する問題