みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル関数

また、お世話になります。エクセル関数の立て方をお教え下さい。

セル「A1」に金額を入力します。
セル「A2」に人数を入力します。
その結果が、セル「B2」に表示させます。

A1が1000円以内で、A2が10人以内なら、B2は100円
A1が1000円以内で、A2が20人以内なら、B2は200円
A1が1000円以内で、A2が21人以上なら、B2は300円
A1が1000円超なら、A2の人数に関わりなく、B2は400円

という関数式を立てるには、どうしたらいいですか。
関数にはほとんど知識がありませんので、具体的に式を立てて頂けたら大変に助かります。

これに関連して、逆引きの関数辞典みたいなものはないでしょうか。もしご存じでしたら、書籍名を教えて下さい。

投稿日時 - 2007-10-31 11:47:26

QNo.3477024

困ってます

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

=IF(A1>1000,400,IF(A2<=10,100,IF(A2<=20,200,300)))


IF文の関数を1個覚えるだけで、幅が広がりますよ。

=if(条件,正の値,負の値)だったかな・・・?
ifは「もし」 最初の, は、「条件のとおりだったら」 次のコンマは「そうでなければ」(Else)
となります。


1個の条件では収まらない今回のような場合では、「そうでなければのところにあらためて、「もし」を追加してやることで、長い条件でも対応できますよ。

=IF(A1>1000,400,IF(A2<=10,100,IF(A2<=20,200,300)))

>は含まない  >=は含みます。
つまり=がついているものは、「以上・以下」
ないものは、「より上・より下・超える」などです。

この式の場合、まず1000円超えてる段階で400円になる。
その次の段階で、10人以下で100、20人以下で200
これ以外の条件が起こりえないので、残りが300になります。

投稿日時 - 2007-10-31 13:09:04

お礼

答えのみならず、式の解説もして頂き有り難うございます。
No1の方とは、若干違いますが、どちらも同じ結果となるようですね。
今後ともよろしくお願いいたします。

投稿日時 - 2007-10-31 13:23:50

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

=IF(A1<=1000,IF(A2<=10,100,IF(A2<=20,200,300)),400)
でどうでしょうか?

投稿日時 - 2007-10-31 11:59:23

お礼

有り難うございます。
出来ました!!
どうやって勉強するとこんな答えが出せるのでしょうか。不思議です。
本当に助かりました。

投稿日時 - 2007-10-31 13:13:58

あなたにオススメの質問