目次
Excelの場合、セルが存在するかどうかを確認する必要がある場合があります。 ほうてん 本日は、セルに特定のテキストが含まれているかどうかを確認する方法をご紹介します。 本セッションでは、Excel 2019を使用していますが、お好みのバージョンをご自由にお使いください。
まず最初に、例のベースとなるデータセットについて知っておこう。
.
このデータセットを使って、あるセルが特定のテキストを含むかどうかを調べます。
ただし、これは基本的なデータセットであり、実際のシナリオではもっと大規模で複雑なデータセットに遭遇する可能性があることに注意してください。
練習用ワークブック
練習用ワークブックは、下記リンクからダウンロードしてください。
Excel セルに特定のテキストが含まれている場合.xlsxセルに特定のテキストが含まれている場合
1.セルに特定の文字列のみが含まれる
探しているテキスト(文字列)だけを正確に含む(含まない)セルを調べることができます。 そのセルには、追加の文字列は含まれません。
例えば、我々のデータセットでは グレード カラムが 合格 または 失敗 が含まれているかどうかを調べることができます。 合格 または 失敗 .
ここでは、例えば、セルに「合格」が含まれているかどうかをチェックし、新たに導入されたところで発言を追加することにします。 備考 の欄があります。
チェック」などの言葉を聞いて、まず頭に浮かぶ機能のひとつが イフ . イフ は,論理テストを行い,バイナリ値(TRUE または FALSE)を返します。
を使って式を書いてみましょう。 イフ という特定のテキストがセルに含まれているかどうかをチェックします。
=IF(D4="Passed","Promoted","")
ここでは、論理演算を設定した D4="合格"
を比較するものです。 D4 は "Passed "であるか否かを含む。
について if_true_value Promoted "を設定した場合、テキストを含むセルを見つけると、結果として表示されます。 当面は if_false_value が提供されます。
があります。 D4 のセルには検索テキスト「Passed」があるので、この数式は if_true_value .
次に、残りのセルについて数式を書きます。 AuoFill 機能も搭載しています。
この式は if_true_value , "Promoted "を含むセルは完璧に "Passed "である。
大文字・小文字を区別せずに動作するので、セルの中に "Passed "ではなく "passed "が含まれていても動作します。
続きを読む Excel 範囲内の文字列を検索する
2.特定の文字列を含むセル(部分一致)
セル内の特定の文字列を部分文字列として検索する必要がある場合があります。 このセクションでは、その方法について説明します。
のセル内にある文字列(グループ名)を検索する例です。 ID の欄があります。
ここでは、例の文脈にマッチしたいくつかの列を紹介しました。
のために見ることができます。 検索文字列 行をマージする方法については、行のマージの記事を参照してください。
I. FIND機能によるマッチング(大文字・小文字を区別する)
前節では イフ この関数は,テキストをチェックするためのものです(論理式による)。 この関数は,他のサポート関数も必要ですが,使用する予定です。
があります。 FIND 関数と対になる関数です。 イフ を使用して、セルが少なくとも部分文字列として特定のテキストを含むかどうかをチェックします。
例えば、"AB "という文字列を選び、そのセル内を ID の欄があります。
では、その式を書いてみましょう。 B4 のセルがあります。
=IF(ISNUMBER(FIND($E$4,B4)), "Found", "Not Found")
ここでは、関数 ISNUMBER . ISNUMBER 収益 真 セルに数字が含まれているとき ファルス さもなければ
をチェックするため、この関数を使用しました。 FIND 関数の結果は、数値かどうかではなく、ブーリアン値を返します。
の時は ISNUMBER 収益 真 であれば イフ 関数が起動します。 if_true_value (発見) それ以外の場合は if_false_value (見つかりません) .
ここでは、最初のセルについては ISNUMBER-FIND(イズナンバーファインド 戻り 真 と表示され、最終的に「Found」と出力されるようになりました。
グループ名を抽出してみましょう。 ミッド この関数は,与えられた文字列の途中から文字を抽出する。
=if(isnumber(find($e$4,b4)),mid(b4,find($e$4,b4),2),"")
まず、セルに特定の文字列が含まれているかどうかをチェックし、次に、そのセルで if_true_value フィールドを設定しました。 ミッド 関数で値を取得します。 FIND 以内 ミッド には開始点と2文字が入ります。 これで2文字のグループ名が取り出せます。
セルにテキストが含まれているときにグループ名が見つかりました。
から FIND は大文字と小文字を区別して実行されません。 if_true_value を "ab "とします。
残りのセルのコードを書いてください。 グループ名が正確に書かれているのがわかります。 検索文字列 .
を変更します。 検索文字列 の値を変更すると、更新された結果が表示されます。
II. SEARCH機能によるマッチング(大文字・小文字を区別しない)
前節では、大文字と小文字を区別するアプローチを見たが、柔軟性を保つために、大文字と小文字を区別しないアプローチを採用することができる。 そのためには、大文字と小文字を区別するための 検索 関数が役に立つでしょう。
検索 は,ある文字列が別の文字列の中にある位置を返す。 これは FIND 関数を使用しますが、大文字と小文字は区別されません。
計算式は以下の通りです。
=if(isnumber(search($e$4,b4)),mid(b4,search($e$4,b4),2),"")
というのが似ているような気がします。 FIND のセクションで説明しました。 FIND をもって 検索 それ以外の部分は同じで、まったく同じように動作します。
セルにテキストが含まれているときにグループ名が見つかりました。
残りのセルにも数式を書き込んでください。 何らかの形で「AB」を持つグループ名をすべて見つけることができます。
と書くと、「ab」は 検索文字列 を実行しても、これらの値は取得されません。
III.COUNTIF関数によるマッチング(大文字・小文字を区別しない)
セルが特定のテキストを部分文字列として含んでいることを確認するもう一つの方法は、以下の組み合わせです。 イフ と COUNTIF このアプローチも大文字と小文字を区別しない。
この COUNTIF 関数は、一つの条件を満たす範囲内のセルを数える。
これで、次のような数式になります。
=IF(COUNTIF(B4, "*"&$E$4& "*"),MID(B4,SEARCH($E$4,B4),2),"")
を使ってロジックを確認しています。 COUNTIF ...使用 COUNTIF は,カウント値が1であるか否かをチェックする。
もし COUNTIF が1を返したら、if_true_value( ミッド が返されます。 ミッド の部分については、前節で説明したとおりです。
から0に。 COUNTIF の部分を削除すると、数式は if_false_value (当面、空のセル) を返します。
一致する文字列が見つかり、そのセルが特定の文字列を含んでいる場合にグループ名を返す式ができました。
残りのセルにも数式を書き込んでください。 検索文字列 どのような形であれ
を変えてみよう。 検索文字列 を、更新した結果が目の前に現れます。
詳細はこちら COUNTIF 部分一致のアプローチについては、こちらのCOUNTIF PARTIAL MATCHの記事をご覧ください。 ifによる部分一致に興味がある方は、こちらのIF Partial Matchの記事が参考になると思います。
結論
以上、Excelでセルに特定の文字列が含まれているかどうかを確認する方法をいくつか紹介しました。 参考になれば幸いです。 分かりにくいところがあれば、お気軽にコメントください。 また、ここで紹介しきれなかった方法があれば、教えてください。