- ベストアンサー
IF関数の複数条件の設定
IF関数を使って、振込先銀行・請求額から条件を5つ設定して手数料を出すよう設定したいのですが、何度試してもうまく行きません>< 条件1:請求金額が1万円未満→手数料 0円 条件2:請求金額が1万円以上3万円未満、かつ振込先がUFJ→手数料 315円 条件3:請求金額が3万円以上、かつ振込先がUFJ→手数料 525円 条件4:請求金額が1万円以上3万円未満、かつ振込先がUFJ以外→手数料 630円 条件5:請求金額が3万円以上、かつ振込先がUFJ以外→手数料 840円 丸投げに近い質問で恐縮ですが、アドバイスよろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- kagakusuki
- ベストアンサー率51% (2610/5101)
回答番号ANo.4です。 失礼しました、先程の回答で述べた関数において、30000とすべき箇所を、間違えて3000としておりました。 【誤】 =IF(AND(ISNUMBER($A2),$A2>0),LOOKUP($A2,{0,10000,3000},IF($B2="UFJ",{0,315,525},{0,630,840})),"") 【正】 =IF(AND(ISNUMBER($A2),$A2>0),LOOKUP($A2,{0,10000,30000},IF($B2="UFJ",{0,315,525},{0,630,840})),"")
お礼
訂正まで入れていただいてありがとうございます。 別でリストを作成するのがポイントですね! 色々と参考になりました。 ありがとうございました。
- kagakusuki
- ベストアンサー率51% (2610/5101)
今仮に、A列に請求金額、B列に振込先が入力すると、C列に手数料を表示させるものとします。 まず、C2セルに次の関数を入力して下さい。 =IF(AND(ISNUMBER($A2),$A2>0),LOOKUP($A2,{0,10000,3000},IF($B2="UFJ",{0,315,525},{0,630,840})),"") 次に、C2セルをコピーして、C3以下に貼り付けて下さい。 これで、手数料が自動的に表示されます。
- imogasi
- ベストアンサー率27% (4737/17069)
よくこういう段階別の表を引く問題で、IF関数の質問として出す質問者が多いが、VLOOKUP関数(それもTRUE型)などを知らない初心者だろうと思う。 取引銀行とそれ以外を2列(場合によっては4列の表)の表(振り込み金額区分と振り込み手数料列)にしてVLOOKUPの参照表(第2引数)を使い分けるのが、普通のやり方だ。 その場合に振り込み銀行をIFで聞き、別の式を適用する必要はあるが。 Googleででも「エクセル VLOOKUP TRUE型」で照会して勉強のこと。 http://iksystem.dyndns.org/~ict/excel_base/function/VLOOKUP03.htm 外多数。
お礼
おっしゃる通り、勉強が足りずVLOOKUP関数を使うことは全く頭をよぎりませんでした・・・; 頑張って勉強していこうと思います。 ご回答ありがとうございました。
- mshr1962
- ベストアンサー率39% (7417/18945)
=IF(請求金額<10000,0,IF(請求金額<30000,IF(振込先="UFJ",315,525),IF(振込先="UFJ",630,840))) こんな方法もあります。 =IF(振込先="UFJ",LOOKUP(請求金額,{0,10000,30000},{0,315,630}),LOOKUP(請求金額,{0,10000,30000},{0,525,840})
お礼
早速ご回答いただいてありがとうございます。 お礼が遅れて申し訳ありませんでした。 LOOKUP関数も勉強してみようと思います。ありがとうございました。
お礼
丁寧なご回答ありがとうございます! 別に表を作っておくと、ものすごく分かりやすいですね。 VLOOKUP関数を使うことは全然思いつかなかったので・・・; とても助かりました。 ありがとうございます。