Excelで指定の文字列を含むかを判定するIF関数を使った方法
ここでは、IF関数を使った「指定の文字列が含まれているかを判定する方法」を解説します。
特に複数条件は「どちらにも当てはまる」、「どちらかに当てはまる」の両方説明します。
これでIF関数の論理式を「含む条件」で指定できるようになりますよ。
1.まずはやりたいことを確認
まずは、やりたいことを例も見ながら確認します。
1-1.IF関数で文字列を含む条件にしたい
やりたいことは、「IF関数で文字列を含む条件にする」ことです。
この時普段のIF関数の使い方と違ってくるのは、「条件値の指定の仕方」です。
逆にいうと、条件値の指定の仕方を覚えれば、「含む」条件で判定ができるようになります。
1-2
.例で確認
一つ例を見てみましょう。
IF関数で含む条件ができると、例えば「B列の研修名に『社内』と入っているものだけに『○』を付ける」といったことができます。
「特定の文字を含む/含まないで返す値を変えたい時」に便利です。
1-3
.ワイルドカードだけではダメ
エクセル関数で含む条件にする時、よく使われるのが「ワイルドカード」です。「*」や「?」を付けることで、含む条件にすることができます。
しかし、結論から言うと、「IF関数でワイルドカードは使えません」。
先程の例で、
=IF($B3="*社内*","○","")
と入れても「不一致(偽)」と判定されてしまいます。
そのため、ひと工夫が必要です。
2.「COUNTIF(S)関数」を組み合わせる
IF関数で「文字列を含む」の条件にするには、「COUNTIF関数」か「COUNTIFS関数」を組み合わせます。
2-1.COUNTIF(S)関数とは
COUNTIF関数やCOUNTIFS関数は、「条件に合うセルをカウント」できる関数です。
違いは「指定できる条件の数」で、COUNTIF関数は「条件一つ」、COUNTIFS関数は「複数条件」の指定ができます。
2-2.組み合わせるとなぜできるのか?
まず、IF関数はワイルドカードが使えません。対して、COUNTIF(S)関数は使えます。
そこで、IF関数の論理式にCOUNTIF(S)を組み合わせ、条件値を含むかどうかをカウントさせます。
IF関数の論理式は、「0は偽」、「0以外は真」と判定しますので、結果「含む」場合は真、「含まない」場合は偽の値が返ってくるのです。
3.「条件一つ」の数式の形と作り方
まず、「文字列を含む」の条件が一つの場合の数式の形と作り方です。
3-1.数式の形
数式の形は、条件値を「文字列」にするか「セル番号」にするかで変わってきます。
それぞれ次の通りです。
【文字列の場合】
条件値を文字列にする場合には、「条件値」に「含むかを確認したい文字列」を入れます。
【セル番号の場合】
条件値をセル番号にする場合には、「セル番号」に「含むかを確認したい文字列の入ったセル番号」を入れます。
なお、どちらも「判定対象」には、「条件値を含むかを確認したいセル番号」を入れます。
3-2.数式の作り方
次に、数式の作り方を見てみます。
先程の例のセルD3に、「『社内』という文字を含むなら○、含まないなら空白」という数式を作ってみます。
なお、例の画像は「条件値に文字列を入れる場合」ですが、セル番号の場合もほぼ変わりありません。
以下手順です。
(1)以下の数式をコピーし、セルに貼り付ける
【文字列の場合】
【セル番号の場合】
(2)「判定対象」の文字を消し、「判定したいセル番号」を入れる
(3)「条件値」または「セル番号」の文字を消し、「含むかを確認したい文字列」または「セル番号」を入れる
(4)「真の場合」と「偽の場合」の文字を消し、それぞれ入れる
(5)Enterキーを押せば完了
必要に応じて他のセルにコピーします。
セルD3に入れた数式は、それぞれ次のようになります。
【文字列の場合】
=IF(COUNTIF(B3,"*社内*"),"○","")
【セル番号の場合】
=IF(COUNTIF(B3,"*"&E1&"*"),"○","")
※条件値がセルE1にある場合
4.「複数条件でAND」の数式の形と作り方
続いて、「文字列を含む」の条件が複数で「AND(どれにも一致)」の場合の数式の形と作り方です。
4-1.数式の形
数式の形は、それぞれ次の通りです。
【文字列の場合】
「判定対象」と「条件値」が2つで1セットです。
やはり、「条件値」に「含むかを確認したい文字列」を入れます。
【セル番号の場合】
こちらも、「セル番号」に「含むかを確認したい文字列の入ったセル番号」を入れます。
なお、どちらも「判定対象」には、「条件値を含むかを確認したいセル番号」を入れます。
4-2.数式の作り方
次に、数式の作り方を見てみます。
先程の例のセルD3に、「『エクセル』と『社内』という文字を含むなら○、含まないなら空白」という数式を作ってみます。
なお、例の画像は「条件値に文字列を入れる場合」ですが、セル番号の場合もほぼ変わりありません。
以下手順です。
(1)以下の数式をコピーし、セルに貼り付ける
【文字列の場合】
【セル番号の場合】
※条件が2つの場合
(2)「判定対象」の文字を消し、「判定したいセル番号」を入れる
(3)「条件値」または「セル番号」の文字を消し、「含むかを確認したい文字列」または「セル番号」を入れる
(4)「真の場合」と「偽の場合」の文字を消し、それぞれ入れる
(5)Enterキーを押せば完了
必要に応じて他のセルにコピーします。
セルD3に入れた数式は、それぞれ次のようになります。
【文字列の場合】
=IF(COUNTIFS(B3,"*エクセル*",B3,"*社内*"),"○","")
【セル番号の場合】
=IF(COUNTIFS(B3,"*"&E1&"*",B3,"*"&F1&"*"),"○","")
※条件値がセルE1とF1にある場合
なお、条件を増やす場合には、COUNTIFS関数のカッコ内の最後に「,判定対象,"*条件値*"」、または「,判定対象,"*"&セル番号&"*"」を条件の数分だけ足せばOKです。
5.「複数条件でOR」の数式の形と作り方
最後に、「文字列を含む」の条件が複数で「OR(どれかに一致)」の場合の数式の形と作り方です。
5-1.数式の形
数式の形は、それぞれ次の通りです。
【文字列の場合】
「判定対象」と「条件値」が2つで1セットです。
やはり、「条件値」に「含むかを確認したい文字列」を入れます。
【セル番号の場合】
こちらも、「セル番号」に「含むかを確認したい文字列の入ったセル番号」を入れます。
なお、どちらも「判定対象」には、「条件値を含むかを確認したいセル番号」を入れます。
5-2.数式の作り方
次に、数式の作り方を見てみます。
先程の例のセルD3に、「『エクセル』か『ワード』という文字を含むなら○、含まないなら空白」という数式を作ってみます。
なお、例の画像は「条件値に文字列を入れる場合」ですが、セル番号の場合もほぼ変わりありません。
以下手順です。
(1)以下の数式をコピーし、セルに貼り付ける
【文字列の場合】
【セル番号の場合】
※条件が2つの場合
(2)「判定対象」の文字を消し、「判定したいセル番号」を入れる
(3)「条件値」または「セル番号」の文字を消し、「含むかを確認したい文字列」または「セル番号」を入れる
(4)「真の場合」と「偽の場合」の文字を消し、それぞれ入れる
(5)Enterキーを押せば完了
必要に応じて他のセルにコピーします。
セルD3に入れた数式は、それぞれ次のようになります。
【文字列の場合】
=IF(COUNTIF(B3,"*エクセル*")+COUNTIF(B3,"*ワード*"),"○","")
【セル番号の場合】
=IF(COUNTIF(B3,"*"&E1&"*")+COUNTIF(B3,"*"&F1&"*"),"○","")
※条件値がセルE1とF1にある場合
なお、条件を増やす場合には、COUNTIF関数を条件の数分だけ増やして足せばOKです。
6.判定対象が他ブックなら別の関数で
以上、IF関数で文字列を含む条件にする方法を解説しました。
ただし、「判定対象」が「他のブック(ファイル)」にある場合には、紹介した数式ではうまく判定できません。
なぜなら、COUNTIF関数やCOUNTIFS関数は「開いていない他のファイルの中身を見ることができない」からです。
別の方法は、次のページで紹介します。
⇒ 「IF関数で他ブック/ファイル上の値を含む条件で判定する方法」へはこちら
以上、参考になれば幸いです。
また、関数に関連したページもたくさんありますので、以下のリンクから参考にしてください。
【口コミ・評判のいいExcel本の紹介】
IF関数の、他の記事へのリンクはこちらです。
- IF関数その他の記事へのリンクはこちら
- ◎基本的な使い方
- ◎以上、以下等の比較演算子を使う方法
- ◎日付範囲や期間を簡単に指定する方法
- ◎日付を比較する時の数式の書き方
- ◎マイナスの場合は0、空白と指定する方法
- ◎空白セルを空白にする方法
- ◎#VALUE!等のエラーになる原因と対処法
- ◎結果がうまくいかない時の原因と対処法
- ◎パーセントを条件に指定する方法
- ◎複数条件のORをリストで指定する方法
- ◎曜日の条件指定がうまくいかない場合の対応方法
- ◎空白でもSUM関数でエラーにしない方法
- ◎値があれば、入っていたらの条件にする方法
- ◎範囲全てが条件値と一致するかを判定する方法
- ◎文字が入っていたらの条件にする方法
- ◎空白を判定する方法
- ◎別シートの値を参照する方法
- ◎複数条件を「かつ」で指定する方法
- ◎複数のうちのどれかに合えばとする方法
- ◎セルの値がいづれかの場合真とする方法
- ◎特定の文字列を含む条件を指定する方法
- ◎複数列全てが一致の条件にするテクニック
- ◎複数条件を指定して分岐させる方法
- ◎ROUND関数の正しい組み合せ方