こんにちは、いぶきです。 当ブログ 【好奇心のホコサキ】に足を運んでくださり、ありがとうございます。
google(グーグル)が提供するツール【スプレッドシート】
エクセルと同じ要領で使うことができるクラウドのツールです。
今回は、条件に応じて処理を変えることができる【IF関数】について使い方を説明していきます。
IF関数
IF関数は、もし~だったらといった条件分岐に従って、その後の処理を変えることができる関数です。
このようなデータがあって、D列に男だったら〇を入力したい場合、IF関数が便利です。
IF関数は、このような式構成になっています。
=IF(論理式, TRUE値, FALSE値)
論理式には、もし~だったらの条件を記入します。
例えば、今回の例だったら、
D2には、C2が男だったらという条件で判定したいので、
C2=”男” となります。
文字列を式に組み込むときは、” ”で囲むようにします。
TRUE値は条件に当てはまる(正)場合に返される値です。直接文字列を記入してもよいですし、セルを指定することもできます。
FALSE値は条件に当てはまらない(偽)場合に返される値です。
例だと、TRUE値は”〇” 、 FALSE値はなにも指定しません。
ちなみに余談ですが、エクセルでは何も指定しないと【0】が入力されますが、スプレッドシートでは空欄となります。
IF関数による出力をもとにして、再度IF関数を利用する場合などは注意が必要です。
というわけで、まとめるとD2に入れるべきIF関数式は
=if(C2=”男”,”〇”,)
となります。
※FALSE値に何も入れない場合であっても、【,】は必要になります。
これをつけてないと、文字列で【FALSE】と表示されてしまいます。
IF関数の入れ子構造
IF関数については、TRUEだった場合、FALSEだった場合の値に、更にIF関数を始めとする他の関数を組み込むことができます。
性別が男で、岡山県在住だった場合【○】と表示したい場合、F2セルに入っている関数は、
=if(D2=”男”,if(E2=”岡山県”,”○”,),)
こうなります。
まず、最初のIF関数で男だったらを判別し、TRUE値の部分にさらにIF関数で岡山県だったらを入れ込んでます。
このようにIF関数は、条件によって判定して、さらにその判定結果を条件に当て込んで判定して、といった形で関数を組むことができるので、複雑な判定式もこなすことができます。
【中級者向け】IF関数に係る文字列判定式の罠
例えば、「名前に星という漢字が含まれていたら○」という判定をしたい場合、少しスプレッドシートをかじったことがある方ですと、ワイルドカードをを用いて、こうすればいいんだ!と思うかと思います。
=if(B2=”*星*”,”○”,)
これ、実は動きません。 SUMIF等では動くんですが、IF関数においては正しく動作しないんです。 なので、【COUNTIF関数】を利用して、下記のようにすると正しく動作します。
=if(countif(B2,”*星*”)=1,”○”,)
これは、IF関数の罠なので、覚えておいて損はないかと思います。
関連してる関数紹介
[clink url=”https://koukisin-hokosaki.com/article/sumif-spreadsheet/”]