エクセルで複数の条件を設定し、それぞれに合致した値を返したいと思っております。


具体的にはある範囲で"○"が1個だったらA、2個だったらB~という感じです。

5、6個条件をつけたいと思うのですが、どのようにしたらいいか、教えてください。

回答の条件
  • 1人1回まで
  • 登録:2008/01/16 09:40:25
  • 終了:2008/01/23 09:45:03

回答(4件)

id:OVA3 No.1

OVA3回答回数242ベストアンサー獲得回数02008/01/16 10:12:51

ポイント18pt

A1に数値が入力されているとして

1ならA、2ならB、3ならC、4ならD、それ以外なら0 という式なら下でできますが

=if(A1=1,A,(if(A1=2,B,(if(A1=3,C,(if(A1=4,D,0))))))

id:rikuzai No.2

りくっち回答回数1366ベストアンサー獲得回数1412008/01/16 10:19:26

ポイント52pt

複数の条件は、IF文を入れ子にしていくことで、最大9まで分岐設定することができます。

また、範囲内に指定の文字がいくつ入っているかを調べるのはCOUNTIF文を使用します。


例えば、A列からI列に○が1ならA、2ならB、3ならC、4以上、もしくは0ならDとJ列に表示する場合、

J1=IF(COUNTIF(A1:I1,"○")=1,"A",IF(COUNTIF(A1:I1,"○")=2,"B",IF(COUNTIF(A1:I1,"○")=3,"C","D")))

といった式になります。


http://www.relief.jp/itnote/archives/001133.php



以上ご参考まで。

id:apr-25 No.3

apr-25回答回数200ベストアンサー獲得回数32008/01/16 13:01:29

ポイント10pt

http://q.apr-25.ne.jp/ (dummy)

条件が5,6件であるならばcountifをその条件文続ければよいと思います。

=if(countif(範囲,"○")=<1,A,if(countif(範囲,"○")=<2,b,・・・if(countif(範囲,"○")=<N,X,Y)・・・)))</p>

条件が多数ある場合や関数の入れ子を増やしたくないのであればVLOOKUPを使用する方法もあります。

=VLOOKUP(countif(範囲,"○"),テーブル,テーブル内の位置,完全一致か近似値可能かの指定)

テーブルの内容

   ○の数  セットする値

    0     ?

    1     A

    2     B

    ・     ・

    ・     ・

    N     X

上記のテーブルを使用する場合、第1引数のテーブルは○の数とセットする値を記した2列の○の数を記した行数分、第2引数のテーブル内の位置はセットする値の2列目のため2、第3引数は近似値可能の1(FALSE)でよいと思います。

id:taisin0212 No.4

タイシン@我孫子回答回数165ベストアンサー獲得回数142008/01/16 10:36:53

ポイント10pt

countif()とvlookup()の複合は如何でしょうか?

0. 準備

別シートには、最終的な結果を返させる表を作っておきます。

(A列) (B列)

 1  A

 2  B

 3  C



1. 判定の実施

ここでは、

セルA1を作業用のセル、

セルA2を判定結果を返すセル であるとします。


セルA1には、=countif(範囲,"〇")

セルA2には、=vlookup(A1, 別シート!$A:$B, 2, FALSE)

と入力します。


セルA2には、

"○"が1個だったらA、2個だったらB

という、○の個数に応じて結果が返ります。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません