Excelについて詳しく解説します
例えば購入代金の手数料が1%かかる場合などを計算する場合は、単純に「代金*1%」するだけで手数料が求められますよね。
しかし、単純な1%ではなく「最低手数料が○円から〜」「○円以下は最低手数料がかかる」というような条件が決まっている変則的な場合もあります。
こうした場合、どんな計算式を書けば良いのでしょう?
条件によって計算式が異なる場合は、IF文を使って、条件分岐させてあげるのが簡単です。
具体例を挙げてみたので、どうぞご参考までに。
例:手数料の条件
例えば、このような場合。
- 購入代金の1%が手数料としてかかる
- 最低手数料は500円
最低手数料が500円ということは、5万円以上の購入の場合にこの「購入代金の1%」が反映されることになります。
しかし逆に5万円以下の購入の場合、一律500円かかることになります。
例えば1万円の1%は100円ですが、最低手数料が500円です。 1万円でも2万円でも、一律500円の手数料になるわけですね。
そうなるとちょっと面倒くさいので、まず条件をわかりやすく整理してみるところからはじめます。
条件を簡単にすることで、Excelでの判定式と計算式も書きやすくなるので、オススメです。
整理すると、条件はこうなる
今回の場合、整理すると条件式としてはこうなります。
- 5万円以上の場合は購入代金の1%かかる
- 5万円未満の場合は一律500円かかる
IF文で条件分岐して計算式を分ける!
こうして条件がハッキリしたら、Excel関数のIF文で条件を分岐させて計算させるのが簡単です。
IF関数の書式は、以下の通りですね。
カンマ区切りで、判定式、OKの場合の計算式、続いてNGの場合の計算式と並べて書いていくことになります。
TRUEとFALSE
ちなみに判定式では一般的に、判定OKの場合をTRUE(トゥルー)、判定NGの場合をFALSE(フォルス)と呼びます。
Excelで条件分岐を行う場合は「TRUEの場合は〜」「FALSEの場合は〜」というような書き方をすることもあるので、これは覚えておくとよいでしょう。
Excel以外での、プログラミングでもTRUE、FALSEという書き方を良くします。
FALSE: 判定NG
計算例
ということで具体的には、下記のような関数と計算式を入力します。
=IF(B8>=50000,B8*1%,500)
これは、B8セルの購入代金が5万円以上かどうかを判定式としています。
判定OKの場合(5万円以上)の計算式と、判定NG(5万円未満)の場合の計算式を続けて入力して、条件分岐しているわけですね。
- 5万円以上の場合(判定OK): 購入代金の1%を計算
- 5万円未満の場合(判定NG): 一律500円を表示
具体的に1万円〜10万円の範囲で並べてみると、自動的に5万円以上の場合は手数料1%の計算になっているのがわかります。
(5万円ちょうどの場合は1%計算でも500円です。)
スポンサードリンク
まとめ
- 手数料などの条件がある場合は、条件をまず整理してみる
- 条件に応じてIF文で条件分岐した計算式をつくる
今回は条件がOKかNGの2種類だけだったのでシンプルですが、条件が3種類にわかれたりすると、IF文が複雑になってきます。
Excelに限った話ではないですが、こうした条件によって計算が変わってくる場合は、簡単なフローチャートをつくって、整理してからIF文をつくることをオススメします。
シンプルなフローチャートがつくれたら、あとはそれにそってIF文などで条件分岐を作っていくことができますよ!
基本的な考えですが、頭の中を整理してから関数式や判定式を書いていく方が、かえって面倒くさくならなくて良いと思います。
以上、参考までに! それでは。