Excel一覧 Excel操作・関数 条件付き文字判定・抽出系 関数の使い方

【Excel】「セルに特定の文字が入っていたら」複数条件を判定する方法|IF・OR・SEARCH関数

Excelでデータを分類したり判定したりする際、「セルの中に特定の文字が含まれていたら、特定の結果を返す」という条件分岐を使うことがよくあります。
しかし、実務では「1つの文字」だけでなく、「複数のキーワードに一致したら〇〇」といった条件を作りたい場面も多いでしょう。

たとえば、

  • セル内に「東京」または「大阪」が含まれていたら「主要都市」
  • 商品名に「A」または「B」が含まれていたら「対象商品」
  • コメント欄に「不良」や「返品」といった言葉が含まれていたら「要確認」

こうした“複数の条件をまとめて判定する方法”を理解しておくと、膨大なデータを一瞬で分類でき、業務効率が飛躍的に向上します。

この記事では、Excelの標準関数だけで「特定の文字が含まれていたら複数条件を判定」する方法をわかりやすく解説します。

✅ 基本の考え方:「IF関数 × SEARCH関数」で特定文字を判定

まずは、最も基本的な「1つの文字を含むかどうか」を判定する方法を確認しましょう。

"=IF(ISNUMBER(SEARCH("東京",A2)),"該当","非該当")"

この式の意味は次の通りです。

  • SEARCH("東京",A2)
    A2の中に「東京」という文字が含まれている位置を返します。
    例:「東京都港区」なら「1」が返り、「名古屋市」ならエラー(#VALUE!)になります。
  • ISNUMBER関数
    結果が数字ならTRUE(含まれている)、エラーならFALSE(含まれていない)。
  • IF関数
    TRUEなら「該当」、FALSEなら「非該当」と表示。

この組み合わせにより、「セル内に特定の文字が含まれているか」を簡単に判定できます。


✅ 複数の文字を同時に判定する:OR関数の活用

次に、複数の文字を同時に判定したい場合の方法を見ていきましょう。

たとえば「東京」または「大阪」が含まれていたら「主要都市」としたい場合は次のように書きます。

"=IF(OR(ISNUMBER(SEARCH("東京",A2)),ISNUMBER(SEARCH("大阪",A2))),"主要都市","その他")"

解説:

  • OR関数は「いずれかがTRUEならTRUE」と判定します。
    → つまり「東京」または「大阪」のどちらかを含んでいれば「主要都市」。

この構文は非常に汎用性が高く、営業データや顧客コメントなどで頻繁に使われます。


✅ 複数条件を3つ以上に増やす場合

3つ以上の文字列を判定する場合も、OR関数内に条件を増やすだけです。

"=IF(OR(ISNUMBER(SEARCH("東京",A2)),ISNUMBER(SEARCH("大阪",A2)),ISNUMBER(SEARCH("名古屋",A2))),"対象地域","その他")"

これで、「東京」「大阪」「名古屋」のいずれかを含むセルをすべて「対象地域」として分類できます。

ただし、この方法は判定条件が多くなると式が長くなりがちです。
そこで次の章では、よりスッキリ書ける代替方法を紹介します。

参考:【Excel】IF関数で複数条件を指定する方法とは?AND・OR・IFSまで完全ガイド!


✅ COUNT関数で簡潔に複数文字を判定する方法

複数条件を簡単にまとめたいときに使えるのが「COUNT」+「SEARCH」の組み合わせです。
以下の式を見てください。

"=IF(SUM(COUNT(SEARCH({"東京","大阪","名古屋"},A2)))>0,"該当","非該当")"

この構文では、波括弧 {} を使って複数の検索語を一括指定しています。
SEARCH関数が複数の検索語に対して同時に動作し、その結果をCOUNT関数が数値化します。

  • 「東京」や「大阪」など、いずれかが見つかれば数値が返る → COUNTが1以上になる
  • すべて見つからなければエラー → COUNTが0

これにより、式を短く保ちながら複数条件をスッキリ書けます。
このテクニックは特にIFと組み合わせた文字判定の最適解として覚えておくと便利です。

参考:【Excel】COUNTIF関数を使用して条件一致の分析方法


✅ 含まれている複数キーワードを一覧で表示する応用例

単に「含まれているかどうか」だけでなく、「どのキーワードが含まれているか」を表示したい場合もあります。
たとえば、A2に「東京」「大阪」「名古屋」のうち複数が含まれている場合、それらをすべて出したいケースです。

"=TEXTJOIN("、",TRUE,IF(ISNUMBER(SEARCH({"東京","大阪","名古屋"},A2)),{"東京","大阪","名古屋"},""))"

ポイント:

  • IF(ISNUMBER(SEARCH(...))) で該当文字だけを抽出
  • TEXTJOIN関数 で複数の該当語を1つのセルに結合(区切り文字「、」)

これにより、「東京都・大阪府」と書かれたセルなら「東京、大阪」と表示されます。
顧客のコメント欄やアンケート回答などの分析で非常に重宝する方法です。

参考:【Excel】セルの文字列を結合する方法|関数・演算子・TEXTJOIN・実務活用まで徹底解説


✅ IF関数とAND関数で「すべて含まれている」条件を作る

ここまでの例は「いずれかを含む」条件(OR)でしたが、
逆に「すべての文字を含む場合のみ該当」としたいときはAND関数を使います。

"=IF(AND(ISNUMBER(SEARCH("東京",A2)),ISNUMBER(SEARCH("大阪",A2))),"両方含む","どちらか一方または含まない")"

これで、A2に「東京」と「大阪」の両方が含まれている場合だけ「両方含む」と表示されます。
複数条件の「同時成立」を判定したいときに最適です。


✅ エラー対策:#VALUE! を防ぐIFERROR関数の活用

SEARCH関数は、該当文字が見つからないと「#VALUE!」エラーを返します。
大量のデータを扱う場合、これが邪魔になって分析が進まないことがあります。

そんなときは IFERROR関数 を組み合わせましょう。

"=IF(OR(ISNUMBER(SEARCH("東京",A2)),ISNUMBER(SEARCH("大阪",A2))),"該当","非該当")"

"=IF(OR(ISNUMBER(IFERROR(SEARCH("東京",A2),0)),ISNUMBER(IFERROR(SEARCH("大阪",A2),0))),"該当","非該当")"

これで、検索結果がエラーでも0が返されるため、見た目もスッキリします。
データクレンジングやレポート作成時には欠かせない安定化テクニックです。

参考:【Excel】IFERROR関数で空白を返す方法|エラー時にすっきり見せる実務テクニック




✅ FILTER関数で複数条件のデータを抽出する(Excel 365対応)

Microsoft 365 や Excel 2021 以降では、FILTER関数を使えば条件に一致する行を一括で抽出できます。

"=FILTER(A2:A100,(ISNUMBER(SEARCH("東京",A2:A100)))+(ISNUMBER(SEARCH("大阪",A2:A100))))"

この式では、A列の中で「東京」または「大阪」を含むセルをすべて抽出します。
OR条件を「+」で表現しているのがポイントです。

また、「両方含む」条件にしたい場合は「*」を使います。

"=FILTER(A2:A100,(ISNUMBER(SEARCH("東京",A2:A100)))*(ISNUMBER(SEARCH("大阪",A2:A100))))"

FILTER関数は抽出結果を自動的に展開するため、データ分析や一覧作成にも最適です。


✅ 部分一致の可視化:条件付き書式で色分けする

判定結果を見やすくするために、条件付き書式を使って該当セルを自動で色付けする方法もあります。

  1. 判定したい範囲(例:A2:A100)を選択
  2. [ホーム] → [条件付き書式] → [新しいルール] → 「数式を使用して…」を選択
  3. 数式欄に以下を入力
    "=OR(ISNUMBER(SEARCH("東京",A2)),ISNUMBER(SEARCH("大阪",A2)))"
  4. 塗りつぶしの色を設定して[OK]

これで、「東京」または「大阪」を含むセルが自動的に色付きで表示されます。
抽出せずに視覚的に確認したいときにとても便利です。

参考:【Excel】条件付き書式の基本とは?仕組みと設定方法をわかりやすく解説【初心者向け実務活用例つき】


✅ 実務活用例:コメント分類や顧客分析に応用

この複数条件の文字判定は、実務でも幅広く活用できます。
たとえば次のようなシーンです。

  • 顧客アンケートの分類:「不満」「遅い」「改善」などのキーワードが含まれるコメントを抽出し、改善項目を自動検出。
  • 営業データ分析:「東京」「大阪」「名古屋」を含む地域を主要都市としてグループ化。
  • 商品レビューの抽出:「おすすめ」「リピート」「お気に入り」などの好意的表現をまとめて評価。

こうした文字条件をうまく組み合わせることで、定性的なデータも数値的に分析できるようになります。


✅ RPAや自動化と組み合わせるとさらに効率的

Excelで「特定の文字が含まれていたら複数条件で判定」する仕組みを整えると、
そのデータをRPAツール(UiPathやPower Automateなど)に連携して自動化処理することも可能です。

たとえば、

  • 「重要」や「至急」と含まれるデータだけをRPAでメール送信
  • 「返品」「不良」などを含むコメントだけを別シートへ転送

Excel側であらかじめIF判定を作っておけば、RPAの条件分岐が非常にシンプルになります。
データ整形の段階でExcel関数を活用することは、全体の自動化効率を高める第一歩です。


✅ まとめ:複数の特定文字を判定してデータを自動分類しよう

  • IF+SEARCH+ISNUMBER関数で「含まれている」かどうかを判定できる
  • OR関数で「いずれかを含む」、AND関数で「すべて含む」を表現
  • COUNT+SEARCHで複数条件を簡潔にまとめられる
  • TEXTJOINを使えば、含まれるキーワードを一覧表示できる
  • FILTER関数で複数条件の抽出が可能(Excel 365対応)
  • 条件付き書式で視覚的に判定結果を確認できる
  • RPA連携で自動化にも活かせる

複数キーワードを同時に判定するIF構文を使いこなせば、
膨大なテキストデータを手作業で確認する必要がなくなります。

「特定の文字が入っていたら」という条件を自在に扱えるようになることは、
Excelを単なる表計算ツールから“データ自動判定システム”へと進化させる第一歩です。
ぜひこの記事で紹介した関数の組み合わせを使いこなし、
日々の業務をよりスマートに効率化していきましょう。

-Excel一覧, Excel操作・関数, 条件付き文字判定・抽出系, 関数の使い方