ちくのう症(蓄膿症)は「菌」が原因!?

数字はでたらめですが、Aに1を入力しBには5を入力したときに結果が3000と出る。
Aに1を入力しBには7を入力したときに結果が5000と出る。
Aに3を入力しBには5を入力したときに結果が2000と出る。
Aに3を入力しBには7を入力したときに結果が4000と出る。

そのようなものを作りたいのですが、どなたかわかりやすく教えてはいただけないでしょうか…。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

まず。


初心者さんが見落としがちなポイントの一つとして、「Aに1か3が入る」と思ったらそれしか入らないと決めてかかってます。
例えばAにまだ1も3も記入する前には、「空白」ならという条件がもう一個あります。間違ってAに5や7や、それとも全然関係ない内容を記入しちゃうかもしれません。

たとえば、
=IF(OR(A1<>1,A1<>3,B1<>5,B1<>7),"NA",「正しい計算式」)
などのような工夫をする場合もあります。



次に。
無事にAとBに1,3,5,7が間違いなく記入されたら、次の考え方は大きく3通りあります。

方法1:「場合分け」と言います
=IF(A1=1,IF(B1=5,3000,5000),IF(B1=5,2000,4000))

子供たちには「樹形図を描いて場合分けを漏れなく行う」とよく教えますが、大人でも同じなので紙と鉛筆で実際に絵を描いてどうしたらいいのか考えてみて下さい。


方法2:羅列する
通常は一番ベタで効率の悪いやり方です
=IF(AND(A1=1,B1=5),3000)+IF(AND(A1=1,B1=7),5000)+IF(AND(A1=3,B1=5),2000)+IF(AND(A1=3,B1=7),4000)

=IF(IF(IF(IF(・・・)))
と重ねて作成する事も可能ですが、こちらは最も効率の悪い方法になります。


方法3:対応表から検索する
もうちょっと複雑な関数を駆使して結果を導きます。
今回はAもBも2択なので上述のような方法でもさほど問題にはなりませんが、AやBの場合分けが5つも10も並ぶようだと、IF関数を使う方法はすぐにパンクします。

添付図:
C2
=VLOOKUP(A2,E1:G3,MATCH(B2,E1:G1,0),FALSE)




#特殊な方法
>数字はでたらめですが

という事なので具体的な数式を書いても無駄ですが、AとBに入る数字のパターンを読み取って、結果を足し算で積み上げていくことが出来る場合もあります。

=IF(A1=1,3000,2000)+IF(B1=7,2000)
「エクセル A項目△△でB項目□□だったら」の回答画像3
    • good
    • 0

自分だったら…



A項目、B項目に入力した数値に対して、返ってくる値が一意に決まっているなら
あらかじめ返ってくる値の表を作るかな。
でもって、OFFSET関数とかを使って拾ってくる。

 0,0,0,0,0,0,5000
 0,0,0,0,0,0,0
 0,0,0,0,2000,0,4000

のような表を作って
 =OFFSET(基準セル,A,B)
とかすると思うんだ。

この場合、基準セルは左上のセルの更に左上のセルを指定します。
B2からH4の範囲に数値が入力し、基準をA1セルにします。
(B2セルを基準セルにして、=OFFSET(A-1,B-1)でも良いんだけど)

これなら返す値を表にするだけで好きな値を割り付けられます。
表には数値だけでなく、文字列や数式などを入れられるので
いろいろと応用が利くと思います。
    • good
    • 0

=IF(AND(A1=1,B1=5),3000,IF(AND(A1=1,B1=7),5000,IF(AND(A1=3,B1=5),2000,IF(AND(A1=3,B1=7),4000))))



こんなかんじです。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング