IF関数を使い、利用状況にあわせ金額を自動変更できるようにする



 IF関数の基本をまず習得

セルの値に条件を付けてデータの処理を分岐させる、それを可能にしてくれるのが、IF関数です。IF関数は、論理関数の1つで、文字通り、もしも〜であったならという条件式を設定する事ができます。条件に合った場合は「真の場合」に、合わない場合は「偽の場合」に値を入力する事で、セルに2通りの答えを表示させる事ができます。

更に、IF関数にIF関数をネストする事で、2通り以上の答えを求める事も可能です。
また、IF関数に、同じ論理関数である、[AND]関数、[OR]関数をネストする事で、複数の条件を付けることも簡単です。[AND]関数を利用すれば、AND条件が、[OR]関数を利用すれば、OR条件が設定できます。
このように、IF関数は、同じ論理関数をネストする事で、複数の条件を付けたり、幾通りもの値をセルに表示させたりできるのです。
それでは今回は、IF関数を利用し、条件に合った場合、セルに表示させる値が2通りの場合と、複数の場合、また、複数の条件を付けて求める場合という3つの手順に分けて、詳しくご紹介していきましょう。

 

今回の関数

論理関数
 イフ
 条件によって処理を変える際に使う
 
書 式 =IF(論理式[,真の場合][,偽の場合])
 条件によって処理を変えられるのがIF関数。ここではH5に入った値が大人か子供かを判断し、子供ならば「無料」と表示させ、大人の場合は、利用年数によって会費を変更するように設定している。


統計関数
 カウント エー (カウント オール)
 空白セルを含めずに指定範囲のセルの個数を数える
 
書 式 =COUNTA(値1[,値2,・・・])
 データが入ったセルを数えるのがCOUNTA。数値が入ったセルを数えるならCOUNT。ここではIFとCOUNTA関数を組み合わせ、C〜G列に入った「○」印が2個以上なら20%引き、それ以外なら「無し」と表示。


論理関数
 アンド
 「〜かつ〜」という条件設定をする際に使う
 
書 式 =AND(論理式1[,論理式2,・・・])
 ここではIF関数とAND関数を組み合わせ、利用年数が5年以上で、「かつ」C〜G列に入った「○」の個数が3個以上なら「毎月抽選でプレゼント」と表示。それ以外は「抽選無し」と表示させている。




[1]条件を付け、
答えを2パターン求める

IF関数を利用して、セルの値に条件を付けて、2通りの答えを求めてみよう。


種目が2つ以上の場合は20%の割引をする

大人の利用料は5000円、子供の利用料は1000円であるとする。
種目を2つ以上利用している場合は、割引欄に20%と表示させ、それ以外は割引無しとセルに表示させる。

1.割引欄であるLの5番地を選択、論理関数からIF関数を選択し、

2.論理式のボックスをクリック、種目が2つ以上という条件式を設定する。

3.関数ボックスから、空白以外のセルの個数を求める[COUNTA]関数を選択。

 

4.[COUNTA]関数の値のボックスをクリックし、空白以外の個数を数える範囲(C5からG5)を選択、

5.数式バーをクリックしIF関数のパレットに戻る。

 

6.条件に、[COUNTA]関数で求めた個数が2つ以上であった場合という数式を設定する。

7.[真の場合]には、条件に合った場合、セルに表示させる値を設定するので、「20%」と入力する。

8.[偽の場合]には、条件に合わない場合、セルに表示させる値を設定するので、「無し」と入力する。

9.OKボタンをクリック。

 

◇■ 利用料を割引後の料金に置き換える ■◇

 通常、割引後の利用料を求める場合、数式を利用すると、別のセルに答えを求める事になってしまう。しかし、形式を選択して貼り付け機能を利用すると、四則計算しながら貼り付ける事ができるので、利用料を計算後の利用料に置き換える事ができる。
一度に複数の値に、同じ値を計算して貼り付けたい場合は、是非、利用してみよう。

20%割り引いた値を求めるには、利用料に0.8を掛ければよいので、

1.掛ける値を選択

2.コピーボタンをクリックする。

3.掛けたい値を[Ctrl]キーを押しながら選択、右クリックし、メニューから、

4.「形式を選択して貼り付け」を選択する。

 

5.掛けるので「乗算」を選択、

6.「OK」ボタンをクリックすると、選択した利用料が0.8を掛けた値に変更され、20%引きの利用料が求められるというわけである。

※計算後、[1]の掛ける値を非表示にしたい場合は、セルの書式設定で「;」を入力しておく

 

知ッ得

一連の値を数式で求める場合は元の値とは別に数式を設定するセルを容易しなければならない。
上の[形式を指定して貼り付け]を利用すれば々セルに答えを表示できる。
計算後、「0.8」などかける値を非表示にするには、セルの書式設定のユーザー定義で「;」と入力。



[2]条件を付け、
答えを3パターン以上求める

セルに条件を付けて、答えを3通り求めたい場合は、IF関数にIF関数をネストする事でできる。また、複数のIF関数をネストする事で、3通り以上の複数の答えを求めてセルに表示させる事ができる。


種目が2つ以上の場合は20%の割引をする


1.年会費を求めたいセルJの5番地を選択、IF関数を選択、

2.論理式のボックスをクリックし、利用者が子供であった場合という条件を付けるので、「H5="子供"」と入力。

3.[真の場合]には、子供であった場合、無料なので、「無料」と入力、

4.[偽の場合]には、子供でない場合、もう1つ条件が必要なので、ボックスをクリックし、

5.IF関数をネストする。

 

6.条件には、利用年が3年未満であった場合という条件「I5<3」を入力、

7.[真の場合]には、そうであった場合なので、「2000」と入力、[偽の場合]には、そうでない場合なので、「1000」と入力する。ここでOKボタンクリックすると、求められるが、

8.数式バーをクリックして、IF関数に戻って数式を確認してみる。

 

9.確認後、[OK]ボタンをクリック。

 

◇■ 数式と文字列を組み合わせる場合は""で! ■◇

引数に文字列を利用すると、

1.自動的に""で文字列が囲まれて表示されるが、数式と組み合わせる場合は、

2.文字列を""で囲む必要がある。""で囲まずに数式を設定しても、エラーが出て正しく求める事ができないので注意が必要。

※文字列に自動的に""が付けられるのは、関数パレットを利用した場合のみで、数式バーに直接、入力して数式を設定する場合は、文字列には必ず、""を付けなければならない。

 

知ッ得

引数の確認は、[関数貼り付け]ボタンで「関数の貼り付け」画面を表示させ、そこで該当する関数を表示し確認したり、各関数の数式パレットで確認する方法が一般的だが、数式バーに関数名を入力した後、[ctrl]+[Shift]+[A]キーで、引数が数式バーに表示される。


[3]複数の条件を付けて、
データの処理を分岐させる

IF関数だけでは、条件を1つしか設定できない。そこで、2つ目、3つ目の条件を付ける為に、IF関数をネストする。しかし、これだと、答えも複数になってしまう。
条件は複数付けたいけれど、答えは2通りしか求めたくない場合、そんな時は、IF関数に、AND、OR関数をネストしてみよう。


種目が3つ以上で利用年数が5年以上の場合、毎月抽選を行う


1.答えを求めたいセルMの5番地を選択、

2.IF関数を選択、

3.論理式のボックスをクリック、

4.関数ボックスから、[その他の関数]を選択。

 

5.論理関数から、[AND]関数を選択する。

 

6.[論理式1]のボックスに、1つ目の条件である、利用年数が5年以上であった場合という条件式「I5>=5」を設定する。

7.[論理式2]のボックスには、2つ目の条件である、種目が3つ以上であった場合という条件式を設定するので、関数ボックスから[COUNTA]関数を選択する。

 

8.種目の個数を数えたい範囲である、Cの5番地からGの5番地を選択。これで2つの条件が設定されたので、

9.確認の為に、数式バーをクリックしてAND関数に戻ってみる。

 

10.数式が確認できたら、

11.数式バーをクリックして、IF関数に戻る。

 

12.[真の場合]には、条件に合った場合、セルに表示させる値を入力するので、「毎月抽選でプレゼント」と入力、[偽の場合]には、条件に合わない場合なので、「抽選無し」と入力。

13.[OK]ボタンをクリックすると、求める事ができる。

 

 

 

◇■ OR条件を設定する ■◇

条件にOR条件を設定するには、IF関数にOR関数をネストする。

論理関数の[OR]関数を利用すると、[論理式1]と[論理式2]に条件を入力する事で、[論理式1]の条件、または、[論理式2]の条件を満たす場合という条件を設定する事ができる。
答えは、条件に合った場合、[TRUE]を、条件に合わない場合、[FALSE]を返す。
その為、答えが[TRUE]であった場合に返される値を入力する、IF関数の「真の場合」ボックスを利用する事で、また、答えが[FALSE]であった場合に返される値を入力する、「偽の場合」ボックスをそれぞれ利用する事で、セルに値を表示させる事ができるというわけである。

 

◇■ 〜以外の条件を設定する ■◇

条件に、〜以外の条件を設定する場合、IF関数にNOT関数をネストする。

論理関数の[NOT]関数を利用すると、

@[論理式]に条件を入力する事で、[論理式]の条件を満たす値以外という条件を設定する事ができる。

 

今回の表示形式
セルに年数を入力しただけで、利用料を同じセルに表示させたい、という場合には、セルの表示形式を利用してみよう。これなら、数値を入力するだけで利用料に自動的に変更できる。

1.条件は[ ]でくくり、条件に合った場合にセルに表示させる値を""で囲んで入力する。
条件の区切りは、「;」を入力する。ここでは「[<3]"2000円";[>=3]"1000円"」と入力した。

すると、3未満の数値を入力すると、2000円と表示され、3以上の数値を入力すると、1000円と表示される。