- ベストアンサー
エクセルで条件を使った式を入力する方法
こんにちは、お世話になっております。 早速ですがエクセルで困ったことがあります。 下記のような表があるとします。 A B C 1 出張 10 (ここに式を入れたい) 2 来店 3 (ここに式を入れたい) 3 その他 9 (ここに式を入れたい) 次に、下記のような条件にて式を入れたいと思います。 出張の上限=10 上限を超えたら10として表示、超えなかったらそのままのデータで表示。 来店の上限=5 上限を超えたら5として表示、超えなかったらそのままのデータで表示。 その他の上限=100 上限を超えたら100として表示、超えなかったらそのままのデータで表示。 Cのセルに、A列の入力文字によって判断させ、上記のような式を入れたいのですが、どのようにしたら宜しいでしょうか。 私では皆目検討もつきません。どなたかわかるかたらいらっしゃったらご教授願えると幸いです。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
出張、来店、その他の3条件しかないなら、IF文で充分です。 =IF(A1="出張",IF(B1<10,B1,10),IF(A1="来店",IF(B1<3,B1,3),IF(B1<100,B1,100)) 出張・来店以外はその他しかないので、この式でいけるはずです。 条件の数が多い場合はVLOOKUPなどを使う必要があり、もう少し 「ワザ」が必要になります。
その他の回答 (6)
- hallo-2007
- ベストアンサー率41% (888/2115)
例えば 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)) 下へコピィしてみてください。
お礼
早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =IF(A1="出張",MIN(B1,10),IF(A1="来店",MIN(B1,5),IF(A1="その他",MIN(B1,100),"")))
お礼
早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。
- CMLT
- ベストアンサー率40% (143/357)
No.2さんと同様IF文で充分だとおもいます。 =IF(A1="出張",MIN(B1,10),IF(A1="来店",MIN(B1,3),MIN(B1,100))
お礼
早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。
- merlionXX
- ベストアンサー率48% (1930/4007)
> Cのセルに、A列の入力文字によって判断させ、上記のような式を入れたいのですが、どのようにしたら宜しいでしょうか A列の入力文字によって判断? B列の入力数字が上限か否かを判断するんじゃないんですか? それでよければ C1には =IF(B1="","",MIN(B1,10)) C2には =IF(B2="","",MIN(B2,5)) C3には =IF(B3="","",MIN(B3,100))
お礼
早速のご回答ありがとうございます。大変参考になりました。 MINがこんなところに使えるとは思いませんでした。 まだまだ勉強不足ですが頑張ってみたいと思います。
- A88No8
- ベストアンサー率52% (836/1606)
こんにちは 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つについて各々の条件で適切な処理を書くという手順です。
お礼
早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。
=IF(B1>=10,10,B1) =IF(B2>=5,5,B2) =IF(B3>=100,100,B3) または、 C列に最大値を入力し、D1に次の式を入力し、下へコピー =IF(B1>=C1,C1,B1)
お礼
早速のご回答ありがとうございます。大変参考になりました。 まだまだ勉強不足ですが頑張ってみたいと思います。
お礼
早速のご回答ありがとうございます。大変参考になりました。 VLOOKUPを入れて更にレベルをあげてみたいと思います。 まだまだ勉強不足ですが頑張ってみたいと思います。