Excel。IF関数の論理式。値の一部が含まれているかどうかをチェックするには
<IF+COUNTIF関数>
簡単そうに思えて、意外と難しい処理というのが、Excelにもありますが、今回のケースもその一つだと思います。
次の表があります。
D列のチェックに、例えば、C列の市区町村が「横須賀市」だったら○。
そうでなければ空白と判断したいとします。
その場合は、IF関数を使えば、簡単に求めることができますよね。
D2をクリックして、IF関数ダイアログボックスを表示して
論理式には、C2="横須賀市"
真の場合には、"○"
偽の場合には、""
あとは、OKボタンをクリックして、数式をオートフィルでコピーしてみましょう。
このようにIF関数を使うことで判断処理をさせることは容易にできますよね。
それを踏まえたうえで、
今回は、市区町村が「横浜市」だった”○”。
そうでなければ空白というようにしたい場合はどうしたらいいのでしょうか?
検索するときなど、一部が該当するかどうかを確認するには、
ワイルドカードの”*”を使うことで対応することが出来るのですが、
IF関数の論理式では、
C2="横浜市*"や
C2="横浜市"&*やC2="横浜市"&"*"しても、論理式として成立しません。
では、IF関数では、部分一致の判断はできないのでしょうか?
そこで、登場するのが、COUNTIF関数なのです。
では、D列の数式を一度削除して、
改めて、D2をクリックして、IF関数ダイアログボックスを表示しましょう。
論理式に、COUNTIF関数をネストします。
COUNTIF関数ダイアログボックスが表示されたら、
範囲には、C2
検索条件には、"横浜市*"
とします。
横浜市*とすると、横浜市から始まるという条件になります。
このようにワイルドカードを使えば、
横浜市かどうかを判断することが可能になります。
なお、セル番地とワイルドカードを組み合わせる場合には、
C2&”*”というように、&をつかって、
”*”を結合させて使いますので、注意しましょう。
それでは、またIF関数を作っている途中ですので、
IF関数ダイアログボックスに戻りましょう。
論理式には、COUNTIF(C2,"横浜市*")
真の場合には、"○"
偽の場合には、""
あとは、OKボタンをクリックして、オートフィルで数式をコピーしてみましょう。
今回は、市区町村が横浜市ではじまるデータを見つけることが出来ましたね。
このように、IF関数ではワイルドカードを使えませんので、
ワイルドカードを使うことが出来るCOUNTIF関数を使うことによって、
データの一部が含まれているかどうか、判断することが出来ましたね。
ちょこっとしたことですが、知っておくと便利なテクニックの一つですね。