• ベストアンサー

エクセルの範囲における選択について

次のような表があるとします。 得点  範囲 3   5回以上 2   2回~4回 1   1回以下 Aさんは腕立てが3回できたので2点とする。 このように腕立ての回数を入力することによって点数が自動的にでるような関数を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • kaz2014
  • ベストアンサー率50% (7/14)
回答No.3

ご質問のとおり、得点が3パターンのみであれば、No.2さんのようにIF文で対応可能です。 これを応用して何かをされる場合(例えばここでいう得点が10個以上に分かれているなど)では、IF文を作るのも大変です。 以下、アドバイスです。(得点配分が数パターンある場合を例にします) (1)まず、得点表を上から下に数字が並ぶように作ります。 (範囲と得点を逆にするのがポイントです)    A列 B列 C列  D列  E列 1  範囲 得点 名前  回数  得点 2  1   1  Aさん   ?   X 3  2   2  Bさん   ?   X 4  5   3  Cさん   ?   X 5  8   4 6  10  5 7   ・   6 8   ・   7 9   ・   ・ このように、D列に腕立て回数を入力すると、E列に得点が入るようにする計算を考えます。 (2)E列の得点欄に以下の数式を入力します。 Aさんの得点欄  =VLOOKUP(D2,A2:B9,2) Bさんの得点欄  =VLOOKUP(D3,A2:B9,2) Cさんの得点欄  =VLOOKUP(D4,A2:B9,2) (3)このようにすれば、  1回だと   1点  2~4回 だと 2点  5~7回 だと 3点  8~9回 だと 4点  10~・回だと 5点 となり、得点配分の数が膨大になっても計算できます。 VLOOKUP関数は上記のように、次に出てくる数字未満の範囲について検索を行い、該当する値を返してくれる数式です。 ()内にいれるものは、 第1引数:検索したい値(この例では各選手の回数) 第2引数:検索をする範囲(この例では得点表) 第3引数:第2引数で指定した範囲のうち、答えにしたい列番号(この例では得点表の内、得点が入っている列:2列目) これらをカンマで区切って入力します。 (分かりづらければ、エクセルのヘルプから、VLOOKUP関数を検索してみて下さい)

ponta-gogo
質問者

お礼

ご回答ありがとうございます。 まさにご回答の通りのことをしようと考えておりました。今後ともご指導ねがいます。

その他の回答 (2)

  • Ryokucha
  • ベストアンサー率25% (115/450)
回答No.2

こんなんでいいのでしょうか? =IF(A1<=1,1,IF(A1>=5,3,2))

ponta-gogo
質問者

お礼

ご回答ありがとうございます。参考になりました。

  • taiyo7
  • ベストアンサー率22% (22/97)
回答No.1

 IF関数でできます。  ただし、この場合は3種類に分けるのでIF関数を2回使います。

ponta-gogo
質問者

お礼

ご回答ありがとうございました。

関連するQ&A