IF(イフ)関数 [論理関数]

IF(イフ)関数 [論理関数]

機能

 この場合はこうで、ちがう場合はこう……と、条件分岐の式が立てられます。「=IF(条件,真(TRUE),偽(FALSE))」という書き方が一般的ですが、条件を満たしている場合が真(TRUE)、条件を満たしていない場合が偽(FALSE)を意味します。

 IF 関数をネストさせて実行することもできます。つまり、複数の命令を組み合わせて実行させることが可能で、入れ子構造になってる状態です。IF … IF … IF
と続けて指定できます。

書式

 ABCD
15   
28   
36   
45   
53   
627=IF(A1="","",SUM(A1:A5))

 =IF(論理式,真の場合,偽の場合)

 条件の入力は、比較演算子や論理演算子を、そのときどきによって使い分けてください。
 また、数値や式の場合はそのままダイレクトに入力すればいいですが、
 文字データの場合は「"(ダブルコーテーション)」で区切って入力します。

比較演算子

  • =(等しい)
  • <>(等しくない)
  • <(より小さい・未満)
  • >(より大きい)
  • <=(以下)
  • >=(以上)

論理演算子

  • AND
  • OR

単独分岐

 =IF(A1="","",SUM(A1:A5)) 

 のように、条件のための式を入力し、そのあとで、条件を満たした場合、満たしてない場合の処理を、「,(カンマ)」で区切って記述します。

 この場合なら、A1にデータがあれば合計を計算し、データがないなら (その条件分岐のため、""と、文字列で空白を指定している)、何も表示しないという処理になります。

入れ子(ネスト)分岐

 ABCD
160D4 
282B2 
3100A1 
470C3 
555E5 
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]

タイトルとURLをコピーしました