ExcelのIF関数は条件によって結果を変えられる便利な関数

条件によってやることを変えられる便利なIF関数

業務でExcelを使っている場合、「IF関数」という名前を聞いたことがある方は多いと思います。

たとえばこのような納品書で、数量か単価が入力されたら金額が自動計算されるようにするためには、どんな計算式にしたらよいでしょう?

納品書は、数量か単価が入力されたら、金額を計算し表示されるよう計算式を入れてテンプレートを作っておくと便利ですよね。
そんな時はIF関数を使います。

IF関数というのは、たとえば次のようなことができます。

1.数量がゼロ以上なら単価×数量で金額を計算する
2.点数が70点以上なら「合格」それ以外は「不合格」と表示する
3.在庫数が100未満なら「発注」と表示する

エクセルシートで明細が入力された時だけ計算したい

上のエクセルシートを見ていただくと

小計の欄には「数量 × 単価」の計算式が入力されています。

この計算式だと・・・

明細の内容が入力されている1~3行目はいいですが
明細が空欄の4~6行目は小計だけ「0」と表示され違和感があります。

これは避けたいということで
現場でよく行うのは
「明細が入っている箇所だけ計算式を入れる」
というやり方です。

明細が追加されたら
その都度計算式をコピーしていきます。

しかしこれは問題です。

もしうっかり計算式をコピーするのを忘れたら金額欄は空欄のままになってしまいます。

また計算式がよくわからない人がいたら

電卓たたいて計算した結果を手入力するかもしれません。

これではエクセルのよさを活かせません。

明細が入力されていたら金額を計算するという式にします。
金額欄にIF関数を使います。
IF関数は条件によって結果を変えられる関数です。

IF関数を使って計算式を作るとき

わたしは次の事をオススメしています。

ロジックを考えるのと計算式を作る過程を分ける

何度もいいますが
IF関数は条件によって結果を変えられる関数です。

条件はどんな内容にすればいいか・・
やりたい結果はなにか・・ など。

「IF関数を使って計算式を作る」という表現には
「2つの工程」

つまり、計算式のロジックを考える工程と

ロジックをIF関数の計算式に仕上げる工程に分かれます。

これを意識し
2つの工程を分けて行うことが大切です。

計算式のロジックを考える

エクセルのIF関数で、ロジックを考える工程では
最初にやりたいことを言語化しておきます。

この例では
「明細が入力されていたら金額を計算する」

ですよね。

明細が入力されていたら?
というのをより明確に表現すると・・

  • 品番が入力されていたら
  • 商品名が入力されていたら
  • 数量が入力されていたら
  • 単価が入力されていたら

という表現が思いつきます。

ではどれが適切だと思いますか?

答えは

  • 数量が入力されていたら
  • 単価が入力されていたら

のいずれかです。

数量と単価をかけて計算しますから
どちらかが入力されている時だけ計算するのが適切です。

つまり

ロジックは
数量が入力されていたら数量×単価で計算する
数量が空欄だったらなにもしない

ということになります。

このようなロジックを考える時に
わたしは下のように図式化することをオススメしています。

頭で考えたり
パソコンの画面に向かって考えると
かえって難しいものです。

 

ロジックを考えるときは
手を動かし紙に書いてみたほうが考えを整理しやすいです。

 

ロジックが完成したら
あとはこれをみながら計算式になおすだけです。

IF関数の計算式を仕上げる

ロジックは図式化してありますので

それを見ながら

IF関数を作っていきます。

 

IF関数の計算式をこうなります。

=IF(C3=0,””,C3*D3)

 

「数量が空欄」というのを式で現すと「C3=””」となります。

この「”」ダブルクォーテーションを二つ並べるとなにも入力されていない状態を示します。

 

ということで、金額欄のIF関数は
下記のような計算式になります。

 

これを金額欄に入れておけば数量を入力した行だけ、金額が表示されるという結果になり便利です。

IF関数は、理屈がわかれば簡単です。

IF関数はとても便利な関数なので、IF関数を使えるようになるとExcel資料のいろんなところに使えます。

ぜひ活用してくださいね!