
今、エクセルで支払明細書を作成しているのですが、銀行別・支店別での振込手数料を自動計算したいのですが、IF関数を上手く使いこなせなくてエラーが出てしまいます。
●「三菱東京UFJ」・「大阪営業部」だと手数料が0円
●「三菱東京UFJ」で金額が30,000円未満だと105円、30,000以上だと315円
●「三菱東京UFJ」以外で金額が30,000円未満だと525円、30,000以上だと735円
このような条件で計算式を作成することは可能ですか?
可能なら、計算式を教えてください。
宜しくお願いします。
ちなみに、今は下記のような計算式を使っています。
=IF(H1052<10000,0,VLOOKUP(IF(D1052="三菱東京UFJ",1,2),Sheet2!$A$2:$C$3,IF(H1052<30000,2,3),FALSE))
※別シートに手数料を記入しています。後、当方負担と先方負担も計算できるようにしています。
上記の式は先方負担の場合です。
No.3ベストアンサー
- 回答日時:
回答No1です。
おそらくお望みの式は次のようにしたいとのことでしょう。例えばお求めの表がシート1に有ってD列に銀行名が、H列に振込金額がそれぞれ入力されるとします。そこで例えば振込手数料をJ列に表示させるとします。すべてのデータは2行目から下方にあるとします。
振込の計算に当たってはシート2のA2セルから下方に銀行名が入力されており、B1セルには30000円未満、C1セルには30000円以上と項目名が有り、それぞれの手数料が2行目以降に入力されているとします。
なお、シート2のA列での銀行名についてはその他の銀行を一括でまとめることにして、「その他」という銀行名にしておくことにしてB列には525、C列には735と入力しておきます。
そこでシート1の振込手数料では例えばJ2セルには次の式を入力して下方にドラッグコピーすればよいでしょう。
=IF(H2="","",IF(COUNTIF(Sheet2!A:A,D2)=0,VLOOKUP("その他",Sheet2!A:C,IF(H2<30000,2,3),FALSE),VLOOKUP(D2,Sheet2!A:C,IF(H2<30000,2,3),FALSE)))
この式の意味はH列が空白ならば空白にしなさい、そうでない場合で銀行名がシート2のA列に載っていない場合にはシート2のA列で「その他」の名前の行を検索し、H列の値が30000未満の時はシート2のB列の値を、そうでない場合にはC列の値を表示しなさい、銀行名がシート2のA列に載っている場合にはシート2のA列でその銀行名の行を検索し、H列の値が30000未満の時はシート2のB列の値を、そうでない場合にはC列の値を表示しなさいという意味になります。
COUNTIF関数をVLOOKUP関数の前に置くことでシート2のA列に名前が載っていない場合の処理の仕方を示しています。この操作をしませんと、シート2のA列に銀行名が載っていない場合にはVLOOKUP関数がエラーとなってしまいます。
回答ありがとうございます。
一応、私が使用している項目はこうなっています。
D列 E列 F列 G列 H列 I列
銀行名 支店名 請求額 先方負担 当社負担 支払額
シート2
A列 B列 C列
分類 3万未満 3万以上
1 105 315
2 525 735
それで、KURUMITOさんの式を参考に、なるべく元から使用している式の内容を変えずに
=IF(H1172<10000,0,IF(AND(D1172="三菱東京UFJ",E1172="大阪営業部"),0,VLOOKUP(IF(D1172="三菱東京UFJ",1,2),Sheet2!$A$2:$C$3,IF(H1172<30000,2,3),FALSE)))
とういう式を入れたら、計算してくれたのですが・・・。
大丈夫でしょうか?
一応、成り立ってるとは思います。
No.2
- 回答日時:
ネスト(入れ子)が何重にもなるようなIF文ならば、可読性を高めるためにも、間違いを防ぐためにも作業列を使ったほうがよいような気もします。
私ならば、それぞれの項目で判定をかけてみます。
元データが分かりませんが、
D列が振り込まれてきた銀行名
E列が振り込まれてきた支店名
H列が振り込まれた来た金額
1行目がタイトル行、2行目以下がデータ
とされているならば、
I列で、三菱東京UFJ か否かの判定
J列で、大阪営業部 か否かの判定
K列で、30000円以上か、未満かの判定
L列で、上記3条件のまとめ
としてみます。
具体的には、
I2セルに
=IF(D2="三菱東京UFJ",1,0)
J2セルに
=IF(E2="大阪営業部",1,0)
K2セルに
=IF(H2>=30000,1,0)
L2セルに
=I2*100+J2*10+K2
としてみます。
L列の判定は以下のようになります。
・三菱東京UFJ かつ 大阪営業部の場合
110 ・・・0
111 ・・・0
・三菱東京UFJ で それ以外支店の場合
100 ・・・105
101 ・・・315
・それ以外銀行の場合
10 ・・・ 525
0 ・・・ 525
11 ・・・735
1 ・・・735
の6パターンです。
※10、11は、他行の場合で、たまたま「大阪営業部」という部店名があった場合ですが。
この6パターンを、Sheet2 にでも一覧表として、そこからVlookupで引いてきてはどうでしょう。
作業列を非表示にしておけば問題ないと思います。
回答ありがとうございます。
そういうやり方もあるんですね。
わかりやすくて、間違いもなさそうだし参考になります!
ありがとうございました。
No.1
- 回答日時:
例えばD1セルから下方に銀行名、H1セルから下方に振込金額が有るとしたら振込手数料は次の式で表されますね。
=IF(H1="","",IF(D1="三菱東京UFJ・大阪営業部",0,IF(D1="三菱東京UFJ",IF(H1<30000,105,315),IF(H1<30000,525,735))))、
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユニットハウスの耐用年数と勘...
-
AAで始まる5,000円の新札がある...
-
この前、友達5人で飲み会をし...
-
決算 財務諸表について
-
社長個人の車を法人で使い始め...
-
キャンセルされた新幹線の領収...
-
取引先に立替してもらった場合...
-
仕事で飛行機の往復をマイルで...
-
簿記三級のICカードへのチャージ
-
残存価額と備忘価額について
-
領収書に収入印紙を誤って貼っ...
-
工事未払金の仕訳について教え...
-
日本保守党は寄付をしても領収...
-
建設業経理士2級テキストより ...
-
決算月間際の請求書日付について
-
固定費÷(1-変動費)で、なんで損...
-
急逝した社員の仮払金精算
-
これって横領?
-
同じ意味でしょうか
-
建設業会計における勘定科目に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユニットハウスの耐用年数と勘...
-
決算月間際の請求書日付について
-
社長個人の車を法人で使い始め...
-
建設業経理士2級テキストより ...
-
急逝した社員の仮払金精算
-
自社商品券を無料配布したとき...
-
固定費÷(1-変動費)で、なんで損...
-
これって横領?
-
三井住友銀行 残高証明発行手数...
-
同じ意味でしょうか
-
AAで始まる5,000円の新札がある...
-
ゴルフの領収書
-
売却した車
-
フジ会見 飲み代やホテル代 フ...
-
のれんの償却を気にする企業が...
-
建設業会計における勘定科目に...
-
会社の負債を社員個人に背負わ...
-
残存価額と備忘価額について
-
刺繍は簡易課税では何種になり...
-
領収書に収入印紙を誤って貼っ...
おすすめ情報