機能
この場合はこうで、ちがう場合はこう……と、条件分岐の式が立てられます。「=IF(条件,真(TRUE),偽(FALSE))」という書き方が一般的ですが、条件を満たしている場合が真(TRUE)、条件を満たしていない場合が偽(FALSE)を意味します。
IF 関数をネストさせて実行することもできます。つまり、複数の命令を組み合わせて実行させることが可能で、入れ子構造になってる状態です。IF … IF … IF
と続けて指定できます。
書式
A | B | C | D | |
1 | 5 | |||
2 | 8 | |||
3 | 6 | |||
4 | 5 | |||
5 | 3 | |||
6 | 27 | =IF(A1="","",SUM(A1:A5)) |
=IF(論理式,真の場合,偽の場合)
条件の入力は、比較演算子や論理演算子を、そのときどきによって使い分けてください。
また、数値や式の場合はそのままダイレクトに入力すればいいですが、
文字データの場合は「"(ダブルコーテーション)」で区切って入力します。
比較演算子
- =(等しい)
- <>(等しくない)
- <(より小さい・未満)
- >(より大きい)
- <=(以下)
- >=(以上)
論理演算子
- AND
- OR
単独分岐
=IF(A1="","",SUM(A1:A5))
のように、条件のための式を入力し、そのあとで、条件を満たした場合、満たしてない場合の処理を、「,(カンマ)」で区切って記述します。
この場合なら、A1にデータがあれば合計を計算し、データがないなら (その条件分岐のため、""と、文字列で空白を指定している)、何も表示しないという処理になります。
入れ子(ネスト)分岐
A | B | C | D | |
1 | 60 | D | 4 | |
2 | 82 | B | 2 | |
3 | 100 | A | 1 | |
4 | 70 | C | 3 | |
5 | 55 | E | 5 | |
6 | 点数 | 評価 | ランク |
=IF(A1>89,"A",IF(A1>79,"B",IF(A1>69,"C",IF(A1>59,"D","E"))))
のように、IFを続けて、偽の場合の処理を分岐させてることもできます。
今回の式では、以下のように、テストの点数で評価を与えるといった感じの処理です。
- A(90点以上)
- B(80点以上90点未満)
- C(70点以上80点未満)
- D(60点以上70点未満)
- E( 60点未満)
※ちなみに、点数の順位を単に表示したいなら「RANK」関数を使ったほうが早いです。しかも、対象範囲の指定は絶対参照($)を使ったほうが、コピー&ペーストだけで関数が使えるので、おすすめです。
=RANK(A1,A$1:A$5)というふうに、=RANK(ランクをつけたいセル,ランク対象範囲)で指定します。「$」が絶対参照セルの印ですが、この他にもいくつかパターンがあります。(正確にいうと、今回のような「A$1」は複合参照ですが (^
^;) )
呼び出し方(メニュー)
Excel2007 [数式]タブ→関数ライブラリグループ[論理]→[IF]
Excel2003:[fx:関数の挿入]→関数の分類[論理]→[IF]