• ベストアンサー

エクセルで条件を使った式を入力する方法

こんにちは、お世話になっております。 早速ですがエクセルで困ったことがあります。 下記のような表があるとします。   A    B    C 1 出張  10   (ここに式を入れたい) 2 来店  3    (ここに式を入れたい) 3 その他  9    (ここに式を入れたい) 次に、下記のような条件にて式を入れたいと思います。 出張の上限=10 上限を超えたら10として表示、超えなかったらそのままのデータで表示。 来店の上限=5 上限を超えたら5として表示、超えなかったらそのままのデータで表示。 その他の上限=100 上限を超えたら100として表示、超えなかったらそのままのデータで表示。 Cのセルに、A列の入力文字によって判断させ、上記のような式を入れたいのですが、どのようにしたら宜しいでしょうか。 私では皆目検討もつきません。どなたかわかるかたらいらっしゃったらご教授願えると幸いです。

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

  • ベストアンサー
  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.2

出張、来店、その他の3条件しかないなら、IF文で充分です。 =IF(A1="出張",IF(B1<10,B1,10),IF(A1="来店",IF(B1<3,B1,3),IF(B1<100,B1,100)) 出張・来店以外はその他しかないので、この式でいけるはずです。 条件の数が多い場合はVLOOKUPなどを使う必要があり、もう少し 「ワザ」が必要になります。

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 VLOOKUPを入れて更にレベルをあげてみたいと思います。 まだまだ勉強不足ですが頑張ってみたいと思います。

その他の回答 (6)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.7

例えば   A    B    C   D  E  F 1 出張  10        出張  10  2 来店  3        来店   5 3 その他  9       その他 100 と空白のセルの部分に(上記の場合でE~Fに対応表を作っておいて C列には  =IF(C1<=VLOOKUP(A1,F:F,2,FALSE),B1,VLOOKUP(A1,E:F,2,FALSE)) 下へコピィしてみてください。

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.6

一例です。 =IF(A1="出張",MIN(B1,10),IF(A1="来店",MIN(B1,5),IF(A1="その他",MIN(B1,100),"")))

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。

  • CMLT
  • ベストアンサー率40% (143/357)
回答No.5

No.2さんと同様IF文で充分だとおもいます。 =IF(A1="出張",MIN(B1,10),IF(A1="来店",MIN(B1,3),MIN(B1,100))

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.4

> Cのセルに、A列の入力文字によって判断させ、上記のような式を入れたいのですが、どのようにしたら宜しいでしょうか A列の入力文字によって判断? B列の入力数字が上限か否かを判断するんじゃないんですか? それでよければ C1には =IF(B1="","",MIN(B1,10)) C2には =IF(B2="","",MIN(B2,5)) C3には =IF(B3="","",MIN(B3,100))

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 MINがこんなところに使えるとは思いませんでした。 まだまだ勉強不足ですが頑張ってみたいと思います。

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.3

こんにちは IF文のハシゴになってしまい見にくいですがこんな風。 =IF($A1="出張",IF($B1>10,10,$B1),IF($A1="来店",IF($B1>5,5,$B1),IF($A1="その他",IF($B1>100,100,$B1),"エラー"))) A列で4つに場合分け(一つはエラー)、そのうち条件のある3つについて各々の条件で適切な処理を書くという手順です。

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。

noname#99913
noname#99913
回答No.1

=IF(B1>=10,10,B1) =IF(B2>=5,5,B2) =IF(B3>=100,100,B3) または、 C列に最大値を入力し、D1に次の式を入力し、下へコピー =IF(B1>=C1,C1,B1)

nyacchi_and_ume
質問者

お礼

早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。

関連するQ&A