学生からビジネスマンまで、幅広く使われる表計算アプリ「スプレッドシート」
売り上げから商品管理など、多くの数字を扱うときに重宝します。そんなスプレッドシートについて「もっと知りたい」や「使いこなしたい」と思う方も多いでしょう。
本記事では「複雑な計算を楽に処理したい」や「作業コストを減らしたい」とお悩みの方向けに、IF関数で条件式を書く方法やよく一緒に使う関数との組み合わせ方法について解説します。
IF関数の基本操作からお伝えしますので、ぜひ参考にしてください。
IF関数とは
IF関数とは、たとえば「もし値が1ならば○、そうでなければ×」というように「条件に対する正誤」を算出できる関数のことです。
IF関数を使えば作業コストを減らせるほか、チェックミスを防げるでしょう。なお、IF関数で設定できる条件は1つのみです。
IF関数の基本と使用例
IF関数でははじめに条件(論理式)を設定し、その内容が正しいか否かを割り出します。関数の記述は次のとおりです。
- =IF(論理式, TRUE値, FALSE値)
また、IF関数を使用する状況やケースを取り上げてみました。これ以外にもたくさんのシーンでIF関数が利用できます。
- 得点が60点以上なら「合格」、それ以下なら「不合格」と表示する
- セルが空白なら「空欄」、数量が入力された場合「数量×金額」で計算する
類似のIF系関数と比較
IF関数には類似した条件式の関数がたくさんあります。一例として以下の関数について内容を解説します。
- IFS関数
- IFERROR関数
- COUNTIF/COUNTIFS関数
- SUMIF/SUMIFS関数
IFS関数
IFS関数は複数の条件を指定できるIF関数のことだと覚えるとよいでしょう。「もしこのセルの値が80以上ならば○、50以上なら△、それ以外は×」などと設定できます。
使用例:採点、ランク付けなど
IFERROR関数
IF関数の条件に当てはまらない場合、「#N/A」「#VALUE!」などのエラーが表示されることがあります。
IFERRORは関数がエラーを表示したときに、エラーに代わって「空白」や「特定の値」を表示できる設定のことです。
使用例:エラーが表示される場合、「空白」や「0」を表示させたい
COUNTIF(COUNTIFS)関数
COUNTIFは選択した範囲において、条件に該当するセルがいくつあるか、個数をカウントする関数。COUNTIFは条件が1つ、COUNTIFSは複数の条件を指定できます。
使用例:「パーティ参加/不参加リスト」から参加者だけの人数を数えたい
GoogleスプレッドシートでCOUNTIF関数を利用する方法については、次のページを参考にしてみてください。
SUMIF(SUMIFS)関数
SUMIFでは選択した範囲において、検索条件に一致する項目の合計を計算します。SUMIFSは条件が1つ、SUMIFSは複数の条件を指定できます。
使用例:それぞれ異なる席数と金額設定で、A〜Z席まであるリストから、S席だけの「金額合計」を算出したい
よく一緒に使われる関数紹介
IF関数はよく他の関数とセットで使われます。今回はIF関数と一緒に使うことの多い関数のなかから、以下の3つを紹介します。
- OR関数
- AND関数
- VLOOKUP関数
なお、OR関数・AND関数の概要は類似しており、いずれも条件式の結果をTRUE・FALSEの二択で表示します。
しかし、この表記はわかりにくいためIF関数を組み合わせ、TRUEの場合は「○」、FALSEの場合は「×」などとして表示するとよいでしょう。
OR関数
OR関数は複数の条件に対して、1つでも該当するものがあるかを判定する関数です。条件を満たしていれば「TRUE」、満たしていなければ「FALSE」を表示します。
使用例:テストで国語か数学のいずれかが90点以上だった生徒を判定
AND関数
AND関数は複数の条件をすべて満たしているかを判定する関数です。すべての条件を満たしていれば「TRUE」を、それ以外の場合は「FALSE」を表示します。
使用例:テストで国語・数学どちらも90点以上だった生徒を判定
VLOOKUP関数
VLOOKUPとは、指定した値に一致するデータを呼び出す関数です。
たとえば、多くの商品を管理する卸売業であらかじめ商品の番号・名称・金額などを入力した一覧表を作成しておいたとします。
VLOOKUPを使えば、さきの一覧表を元データにして販売管理表などへ商品番号を入力する際、商品番号をもとにその他の商品情報を呼び出すことが可能です。
使用例:商品コードを入力したら、隣のセルに対応した商品金額データを表示させる
スプレッドシートでIF関数を使ってみる
ここからは、スプレッドシートでのIF関数の使い方について確認していきます。用いる例題はわかりやすく以下とします。
- 例題:テストの採点と合否
- 条件:60点以上が合格、59点以下は不合格
IF関数を使ってみる(基本)
仮にクラスでテストがあったとし、採点結果の一覧表をつくります。
以降の操作でIF関数を使い、生徒の合否結果を表示させてみましょう。なお計算や計算式に扱う英数字・記号は、すべて半角にしてください。
1.名前と点数の表を作成
スプレッドシートを開き、次のように名前と点数の表をつくります。
2.if式で判定分を記述
Aさんに対する合否のセル(C2)へ、次のようにIF関数の条件式を記述します。「合格」など日本語の結果を表示させたいときは、半角の二重引用符(”)で文字を囲む必要があるので注意してください。
=IF(B2>=E3, "合格", "不合格")
なお、このとき上記の記述において、「E3(合格点の数値のセル)の指定を固定する」方法があります。
「=IF(B2>=$E$3, "合格", "不合格")」
上記のように、E3のセルに対してドルマーク($)をつけることで参照するセルを固定できます。C2に入力した数式を他のセルにコピーするとき、セルの指定がずれず便利です。
手打ちでもいいですが「E3」の部分をドラッグし、「F4」キーを押すとまとめてE3の部分を「$E$3」と変えることができます。
3.合否判定を確認
正しくIF関数が使えていれば、Aさんの合否判定は「TRUE」と表示されます。
BからDまでの生徒の合否判定も、同じくIF関数を使って試してみてください。
IF関数を使ってみる(応用)
IF関数を他の関数とあわせて使用してみましょう。今回はIF関数にOR関数を入れ子(ネスト化)します。
用いる例題はわかりやすく以下とします。※以降の内容は「IF関数を使ってみる(基本)」を前提とします。
- 例題:テストの採点と合否
- 条件:1期・2期のテストに赤点(40点以下)があるか
1.名前と点数の表を作成
スプレッドシートを開き、次のように名前と点数の表をつくります。
2.if式で判定分を記述
Aさんの1期・2期のテストに赤点(40点以下)があるか判定しましょう。Aさんに対する赤点合否のセル(D2)へ、次のようにIF関数の条件式を記述します。
=OR(B2<=$F$3,C2<=$F$3)
OR関数の結果が表示されました。ただし判定内容は正しいものの、TRUE・FALSEの表示で読みにくい状態です。
ここでIF関数を使用し、TRUE・FALSEの表示を日本語や記号など、わかりやすい内容に変更します。
具体的には、先の記述「=OR(B2<=$F$3,C2<=$F$3)」を次の内容に書き換えます。なお今回は赤点があった場合は「〇」、なかった場合は空欄としています。
=if(or(B2<=$F$3,C2<=$F$3),"〇","")
このようにIF関数は、スプレッドシートの使い方を幅広く変えてくれます。使い慣れると意外に手軽で、とても便利な機能です。
これまで、IF関数を使う機会の少なかった方はぜひ一度かんたんな表の作成から試してみてくださいね!