主な内容
1.IF 関数の構成
2.1 つの値を基準判断にする
3.数式の計算演算子
4.複数の値を基準に判断する
5.空白の場合の処理
6.【関数の使用法】について
言葉を替えると:「条件を満たしているか否かを判定し、夫々[処理1]、[処理2] を実行します。
(IF 関数を使用して値または数式が条件を満たしているかどうかをテストできます。)
「真」とか「偽」という表現は分りにくいですが、端的に言うと「Yes」か?「No」か?の回答を求め、その処理を指示しているものと思ってください。
(論理式を満たしている(Yes)の時に行わせたい処理を「真の場合」に書き、論理式を満たしていない(No)の場合に行わせたい処理を「偽の場合」に書くということです。)
或る一定の条件(目標値・基準値)に照らし合わせて「合格」か「不合格」、「採用」か「不採用」、「真(TRUE)」か「偽(FALSE)」を見分けます。
用語:引数とは、「計算を実行するときに使う値や、計算方法の詳細などを決める値」のことをいいます。
用語:論理式とは、「計算を実行するときに使う値」は、関数の種類や内容によって、数値、文字列、日付、時刻、セル参照、名前などが指定できます。
また、関数の引数として関数を入れ子にして(ネスト関数と言う)使用することもできます。
条件式を構成する記号(演算子と呼びます。)として下記があります。(英数字・記号等は全て半角文字です。)
演算子は、数式の要素に対して実行する計算の種類を指定します。
演算子には、算術演算子、比較演算子、文字列演算子、参照演算子の 4 種類があります。
算術演算子 : 加算、減算、乗算、除算、べき算などの基本的な計算を実行し、数値を組み合わせて、計算結果として数値を返します。
算術演算子 内容 例
+ (プラス記号) 加算 3+3
- (マイナス記号) 減算 負の数 3-1 -1
* (アスタリスク) 乗算 3*3
/ (スラッシュ) 除算 3/3
% (パーセント記号) パーセンテージ 20%
^ (キャレット) べき算 3^2 (3*3 と同じ)
比較演算子 : 2 つの値を比較し、結果として TRUE または FALSE の論理値を返します。
比較演算子 内容 例
=(等号) 左辺と右辺が等しい A1=B1
> (〜より大きい) 左辺が右辺よりも大きい A1>B1
< (〜より小さい) 左辺が右辺よりも小さい A1<B1
>= (〜以上) 左辺が右辺以上である A1>=B1
<= (〜以下) 左辺が右辺以下である A1<=B1
<>(不等号) 左辺と右辺が等しくない A1<>B1
文字列演算子 : "&" は、複数の文字列を組み合わせて、1 つの文字列の値に結合します。
文字列演算子 内容
& (アンパサンド) 2 つの文字列を結合、または連結して、1 つの連続する文字列の値を作成します。
例 "North " & "wind " は "Northwind " となります。
参照演算子 : 次に挙げる参照演算子は、計算のためにセル範囲を結合します。
参照演算子 内容
: (コロン) セル範囲の参照演算子です。2 つのセル参照を含め、その間に含まれるすべてのセルによって構成される 1 つの参照を作成します。
例 B5:B15
, (カンマ) 複数選択の参照演算子です。複数の参照を 1 つの参照に結合します。
例 SUM(B5:B15,D5:D15)
最も基本的な使用法です。
例題1.は、某OB会の年会費表の作成で、男性会員2000円、女性会員1500円と記入しなさい。です。
OB会氏名 性別 年齢(歳) 会費(円) 山田太郎 男性 80 2000 =IF(B2="男性",$A$12,$B$12) 川田花子 女性 75 1500 草田一郎 男性 64 2000 B2="男性", 論理式 木田一美 女性 50 1500 $A$12, セル参照 上田春子 女性 68 1500 $B$12 セル参照 中田夏男 男性 63 2000 下田秋子 女性 65 1500 OB会年会費 男性 女性 2000 1500
上の表で
1.「B2="男性"」は論理式(=条件式)です。比較演算子の[=]の両隣を含めたものが論理式です。
その次は[,]カンマで区切られます。
2.「男性」のような文字列は["]ダブルクォーティションで囲んで、始めて「値」となるのです。
3.「$A$12」と「$B$12」は基準表をセル参照で記入しましたが、それぞれ、2000、1500と記入しても一向差し支えありません。基準表が別枠に用意してある場合の例です。
セルアドレスを絶対参照にしているのは、[D2]に入力した数式を[D3],[D4]等にコピーしても参照先[A12]や[B12]が、変化しない(ずれない)ようにするためです。
4.[D2]セルに[E2]セルのように入力を終えたら、オートフィル機能で下にドラッグ(コピー)して完成します。
OB会氏名 性別 年齢(歳) 会費(円) 山田太郎 男性 80 2000 → 川田花子 女性 75 1600 | 草田一郎 男性 64 2000 | 木田一美 女性 50 1600 | 上田春子 女性 68 1600 | 中田夏男 男性 63 2000 | 下田秋子 女性 65 1600 | ↓ OB会年会費 =IF(B2="男性",$A$12,$A$12*(1-$B$12)) 男性 女性割引 2000 20% $A$12*(1-$B$12) は四則演算です。
類似検証
90 予算内 =IF(A1<=100,"予算内","予算外") 105 予算外
類似検証
100 10 30 =IF(A1=100,SUM(B1:B2),"") 20
検証
実際支出 予想支出 4月 1500000 800000 予算超過 =IF(B2>C2,"予算超過","OK") 5月 500000 900000 OK =IF(B3>C3,"予算超過","OK") 6月 500000 925000 OK
検証
平均点 ランク 90 A =IF(A1>89,"A",IF(A1>79,"B",IF(A1>69,"C",IF(A1>59,"D","F")))) 85 B 74 C 63 D 59 F ランク基準 なお、ランク基準は、セル参照には使ってありません。 90以上 A 80〜89 B 70〜79 C 60〜69 D 60未満 F
今回は、ボーリングのグループ予選として、表中の7名が争い、アベレージの数値 160 を基準に、160以上の場合は”お目出とう”を、160未満の場合は”残念でした”を表示させます。
氏名 1回戦 2回戦 3回戦 アベレージ ブロック代表 山田太郎 173 165 155 164 お目出とう 川田花子 126 158 170 151 残念でした 草田一郎 135 155 175 155 残念でした 木田一美 180 150 138 156 残念でした 上田春子 140 150 160 150 残念でした 中田夏男 164 168 162 165 お目出とう 下田秋子 151 166 186 168 お目出とう
上では、数式を「 =IF(160<=F2,"お目出とう","残念でした") 」と書きましたが、
論理式の順序を入れ替えても意味が同じなら差し支えありません。「 =IF(F2>=160,"お目出とう","残念でした") 」のようにです。
また、[G1]セルに「選考基準」[G2]セルに[160]と記入してある場合ですが、次の式で出せます。 「 =IF($G$2<=E2,"合格","不合格") 」 [160]と入力せずに[G2]セル参照で入力します。次に「<=」と記入して[E2]のセルを参照で入力します。
ここで注意することは、[G2]を[$G$2]と絶対参照で記入することです。
そうしないと、オートフィル機能でコピーしたとき「参照先」も同時に移動しますので正解が返されません。
それでは、「不合格者」達は「スコアが何点不足していたでしょうか?
[F2]を回答先に指定「 =IF(E2>=160,"お目出とう",E2-160) 」
と入力、完了後オートフィルで[F2]セルから{F8}セルまでドラッグします。
複数の値を基準にし条件判断をおこなうには、IF 関数を組み合わせます。
上表を拡張し[引数3]に[IF関数]を入れ子(ネストという)にします。それを、次々に3回繰り返します。
スコア表の[G1]の「選考基準」を「4ランク」に区分します。(基準値[160]を消去してください。)
[160以上]をAランク、[155以上〜159.9]をBランク、[150.1〜154.9]をCランク、[150=&以下]をDランクに区分します。
下図」のとおり振り分けられました。
(EXCELヘルプより)
セルが空白の場合の処理を加える場合も、複数の値を基準とする場合と同様に IF 関数を組み合わせます。
次の例は、セルが空白の場合は "再試験" を表示し、80 以上の場合は "A" を、 80 未満の場合 "B" を表示します。
A1: 得点 B1: 評価 A2: 95 B2: =IF(A2="","再試験",IF(A2>=80,"A","B")) (結果 : A) A3: B3: =IF(A2="","再試験",IF(A2>=80,"A","B")) (結果 : 再試験) A4: 72 B4: =IF(A2="","再試験",IF(A2>=80,"A","B")) (結果 : B)
セルが空白の場合の判断は、以下の数式のように ISBLANK 関数を使用することもできます。
どちらの数式を使用しても同じ結果となります。
=IF(ISBLANK(A2),"再試験",IF(A2>=80,"A","B"))
御見積書 (利根川園果物直販店) 品名 規格 単価 数量 金額 鳴門金時 1箱 3300 5 16500 びわ 15個入り 1500 5 7500 ハウススイカ 1個(Mサイズ) 1900 10 19000 静岡メロン 1個 2900 10 29000 0 0 合計 72000
品目等の空欄は書類の上で良く見かけます。そうして、下段で合計額が表示されるようです。
途中の「0」表示を無くすには、背景色と同色にしてもできますが、IF 関数の使用で行います。
解説
御見積書 (利根川園果物直販店) 品名 規格 単価 数量 金額 鳴門金時 1箱 3300 5 16500 びわ 15個入り 1500 5 7500 ハウススイカ 1個(Mサイズ) 1900 10 19000 静岡メロン 1個 2900 10 29000 合計 72000
ここでの、「みそ」は数値に無関係とも思える「品目欄」を利用して、数値[0]をコントロールしたことにあります。
何故なら、品目欄に何も書いて無ければ、当然「単価」「数量」欄も未記入の状態になっている筈だからです。
始めに「関数の図式」をご覧ください。
1.「=」等号
関数の計算式の先頭には必ず入力します。
2.「関数名」は半角英数で入力します。
3.「引数1,2,・・・」
は「計算を実行するときに使う値や、計算方法の詳細などを決める値」のことを言います。
4.「,」カンマは引数と引数の間に入れ、引数を区分します。
5.「()」括弧で引数の両端を挟み、引数入力の開始と終了を表しています。
結論は上の例でも分るように「取り扱う関数」によって、引数の内容が異なります。
数式パレットには、計算式に応じた「内容」の記入欄が表示され、その数もまちまちです。
<参考>
<その他の論理式で良く使われるものに次があります。
その条件を複数設定して全ての条件を満たしいるか(AND)
複数の条件のうち、一つでも満たしているものがあるか(OR)
条件と等しくないか(NOT)
などがあり、IF関数に組み込まれて使われることが多く、複雑な条件分岐を可能にしています。>
続きます。