[書式] IF(論理式,真の場合,偽の場合)
[機能] 条件判断をおこない、論理式が TRUE か FALSE かによって違う計算をおこないます。
[引数] <論理式> TRUE か FALSE を返す計算式を指定します。
<真の場合> 論理式が TRUE の場合の値や計算式を指定します。
<偽の場合> 論理式が FALSE の場合の値や計算式を指定します。
●●● 「 =1=1 」 さて、その計算結果は? ●●●
まずは、ちょっとしたクイズから・・・。
セルに
=1=1
と入力しました。セルの計算結果はどうなるでしょう・・・?
IF関数を使いこなせるかどうかは、「論理式」の理解がポイントとなります。
そこでIF関数の冒頭に、このような問題を出してみたのですが、いかがでしょうか。
●●● 論理式って何なの? ●●●
さて、クイズの答えは後まわしにして、
まずは「論理式」とは何か、考えていきましょう。
ひとことで言ってしまえば、論理式とは、
「計算結果として TRUE か FALSE のいずれかを返す計算式」
のことです。
そしてこの論理式は、おおむね次の2つのケースのいずれかです。
● 比較演算子を使った論理式
● IS関数を使った論理式
●●● 「比較演算子」を使った論理式 ●●●
比較演算子には次の6種類があります。
= (等しい)
> (大なり)
< (小なり)
>= (以上)
<= (以下)
<> (等しくない)「そんなこと知ってるよ」 という声が聞こえてきそうですが・・・。
さて、ではさきほどのクイズに戻りましょう。
=1=1
と入力すると、どうなか。
エラー??
そんなことはないです。きちんと計算がおこなわれます。そして、
TRUE
と表示されます。
さて、ではこの計算式の意味はどういうことなのでしょうか。
この計算式には「=」が2つありますね・・・・・でも、その2つは別物です。
最初の「=」は、「これは計算式だよ」ということを示す「=」です。
計算式を入力する時は、いつも最初に「=」を入力しますよね。その「=」です。
そして2番目の「=」が、比較演算子の「=」なのです。
ということで、お分かりでしょうか。この計算式は、
「1と1は等しいか?」
ということを計算しているのです。
もちろん1と1は等しいですから、真となり、
計算結果として「TRUE」が表示されたわけです。
このように、比較演算子を利用して TRUE か FALSE を返す計算式が「論理式」です。
IF関数では、この「論理式」を、第1引数に指定します。そして、
それが TRUE だったら第2引数、FALSE だったら 第3引数の値が出力されるのです。
●●● 「IS関数」を使った論理式 ●●●
演算子ばかりでなく、関数でも TRUE や FALSE を計算結果として返すものがあります。
代表的なものに、IS関数と呼ばれている次のような関数があります。
ISBLANK
ISERR
ISERROR
ISLOGICAL
ISNA
ISNONTEXT
ISNUMBER
ISREF
ISTEXT
これらの関数は、
ISNUMBER(テストの対象)
といった使い方をします。
たとえば ISNUMBER関数は、指定した値が数値かどうかを調べ、
数値なら TRUE そうでなければ FALSE を返す関数です。
上図では、セルB3に
=ISNUMBER(B1)
と入力されています。
セルB1には数値が入力されているので、計算結果が TRUE となります。
●●● IF関数の、もっともシンプルな例 ●●●
では、上記の
=ISNUMBER(B1)
に IF関数を使ってみましょう。
ここでは、まずもっともシンプルな例で。
B3 の計算式を
=IF(ISNUMBER(B1),"数字だよ","数字じゃないっしょ!!")
なんてふうにしてみます。
B1 が数値なら、こんな計算結果。
数値でなければ、こんな計算結果になります。
条件式が TRUE を返している時には第2引数を、
FALSE を返している時には第3引数を、ちゃんと計算結果として出力していますね。
IF関数は、さまざまな局面で活用できる、とても重要な関数です。
どんなに簡単に思えても、まずは基本からしっかり理解するのがいいと思います。