【Excel】IF文のワイルドカードを用いた条件判定における所見

2019年4月23日

こんにちは。行未です。自分用の備忘録。

「可読性」を考える上で本当に大事だと思ったのでまとめました。

書き殴ってますが許して下さい。

IF文について

IF(条件, TRUE の処理, FALSE の処理)
条件を満たすときはTRUE、FALSE の処理を返す。

TRUE,FALSEの実態についてはこちらのサイト様の検証により詳細を把握できる。

特に、以下の結果は重要である。

・数値は0以外がTRUE。0のみがFALSE (負の数もTRUE)
・文字列の"TRUE"と"FALSE"はそのまま論理値として処理される。このとき、大文字小文字の区別はなし


【Excel】IF文の条件判定について(truthyとfalsy)
https://qiita.com/aqril_1132/items/f895fa87df99b0582d12

所見

if文において、以下の式は"*"という文字として認識されてしまう
よって、「A1」セルに「田中」という文字が入っているかどうかを調べるとき、ワイルドカードを用いて、以下の式で表現できる。

=IF(COUNTIF(A1,"*田中*")>0,"○","×")・・・①

COUNTIF記述例1

尚、式自体のシンプル性に着目した場合、上記の引用の結果を踏まえると、
①のif文の第一引数は以下の式で表現する方がシンプルである。

COUNTIF(A1,"*田中*")>0 ⇒ COUNTIF(A1,"*田中*")

COUNTIF記述例2

しかし、「数える」という動作においては、数える数値の初期値はもちろん「0」である。負の数は考えられない。

したがって、全体の可読性を考えると、結局は①の文が良いのかもしれない。

IT, ExcelIT, Excel, Tips

Posted by 行未