この記事では「エクセルにて特定の文字を含むセルに○をつける方法」「エクセルにて特定の文字を含むセルを抽出(検索)する方法」「エクセルにて特定の文字を含むセルの横(右隣)を抽出(検索)する方法」について解説していきます。
これらの処理としては、主に
・IF関数、COUTIF関数
・IFERROR関数、RIGHT関数、LEN関数、FIND関数
を使うと良く、実際のサンプルを用いて見ていきましょう。
エクセルにて特定の文字を含むセルに○をつける方法【IF関数、COUTIF関数】
エクセルにて特定の文字を含むセルに○をつける方法には、上述の通りIF関数、COUTIF関数を使用すると良いです。
まずはイメージしやすいよう、リストを作成しましょう。
今回の場合は製品名とそれに対する管理番号をリストとして作成しました。
A列に「管理番号」、B列に「製品名」を記載します。
今回は特定の文字として「Z」を含むセルに○をつけます。そのためC列に「特定文字を含むセルに○」と記載します。
準備ができましたので、C列の「特定文字を含むセルに○」に関数を入れます。
具体的には=IF(COUNTIF(A2,”*Z*”)>0,”○”,””)と入力しましょう。
この数式の意味を解説していきます。
まずCOUNTIF関数は指定の条件に合う数をカウントする関数であり
=COUNTIF(範囲、検索条件)
と使います。
IF関数は、論理式に当てはまるかどうかで返す値を変化させる関数であり
=IF(論理式、[値が真の場合]、[値が偽の場合])
などと入力していきます。
今回の例では、
COUNTIF関数:特定の範囲の中に検索ワードと同じものがいくつあるか数えます。
・範囲(検索する範囲):A2
・検索条件(検索ワード):特定の文字として「Z」
※特定の文字として「Zを“含んだもの”」をカウントします。
そのため単純に「Z」と入れてしまうと、A2に「Z」単体が入っていないとカウントできません。
そこで、ワイルドカードのような役割である「*」をZの頭と終わりにつけることで、「Zを“含んだもの”」をカウントできるようにします。
また、特定の文字列をカウントするので、文字列の前後に「”」をつけます。 今回の場合は「”*Z*”」と入力します。
IF関数:条件式を作り、その条件に一致するかしないかによって動作を変えるものです。
・論理式(条件式):①のCOUNTIF結果が0以上であること(一致するものがあること)
※①のCOUNTIF関数の内容をそのままIF関数の条件式に入れ込みます。
今回の場合は「COUNTIF(A2,”*Z*”)>0」と入力します。
・値が真の場合(一致するものがある場合):
COUNTIFを用いて検索に一致するものがあった場合に「○」と表示
※特定の文字列として「○」が表示されるようにするので、文字列の前後に「”」をつける必要があります。
今回の場合は「”○”」と入力します。
・値が偽の場合(一致するものがない場合):
COUNTIFを用いて検索に一致するものない場合に空欄
※空欄は先ほどの「”」を使用します。今回の場合は「””」と入力します。
としましょう。
ENTERを押すと特定文字を含むかの確認の結果、特定文字を含むものがあれば「○」、一致するものがなければ空欄になります。
今回A2セルの「123-Z5356」は特定文字「Z」を含んでいるので「○」と表示されます。
式を他の行にもコピーすると、3行目以降にも確認結果が表示されます。
これで、IF関数、COUNTIF関数を用いたエクセルにて特定の文字を含むセルに○をつける方法が完了です。
エクセルにて特定の文字を含むセルを抽出(検索)する方法【IF関数、COUNTIF関数】
エクセルにて特定の文字を含むセルを抽出(検索)する方法は、上述の通りIF関数、COUNTIF関数の組み合わせを使用すると良いです。
先ほどのリストを用いて説明します。今回は特定の文字として「Z」を含むセルを抽出します。
そのためD列に「特定文字を含むセルを抽出」と記載します。
準備ができましたので、D列の「特定文字を含むセルを抽出」に関数を入れます。
具体的には該当セルに=IF(COUNTIF(A2,”*Z*”)>0,A2,””)と入力しましょうい。
この数式の意味を確認していきます。
COUNTIF関数:特定の範囲の中に検索ワードと同じものがいくつあるか数えます。
・範囲(検索する範囲):A2
・検索条件(検索ワード):特定の文字として「Z」
※特定の文字として「Zを“含んだもの”」をカウントします。
そのため単純に「Z」と入れてしまうと、A2に「Z」単体が入っていないとカウントできません。
そこで、ワイルドカードのような役割である「*」をZの頭と終わりにつけることで、「Zを“含んだもの”」をカウントできるようにします。
また、特定の文字列をカウントするので、文字列の前後に「”」をつけます。
今回の場合は「”*Z*”」と入力します。
IF関数:条件式を作り、その条件に一致するかしないかによって動作を変えるものです。
・論理式(条件式):①のCOUNTIF結果が0以上であること(一致するものがあること)
※①のCOUNTIF関数の内容をそのままIF関数の条件式に入れ込みます。
今回の場合は「COUNTIF(A2,”*Z*”)>0」と入力します。
・値が真の場合(一致するものがある場合):
COUNTIFを用いて検索に一致するものがあった場合にA2の内容を抽出
※検索に一致するものがあった場合、A2の内容が抽出されるようにします。
今回の場合は「A2」と入力します。
・値が偽の場合(一致するものがない場合):
COUNTIFを用いて検索に一致するものない場合に空欄
※空欄は先ほどの「”」を使用します。今回の場合は「””」と入力します。
としましょう。
ENTERを押すと特定文字を含むかの確認の結果、特定文字を含むものがあればA2の内容を抽出、一致するものがなければ空欄になります。
今回A2セルの「123-Z5356」は特定文字「Z」を含んでいるのでD2に「123-Z5356」と表示されます。
式を他の行にもコピーすると、3行目以降にも確認結果が表示されます。
後はフィルタ―をかけるなどして該当データを抽出するなど、適宜対応していきましょう。
これで、IF関数、COUNTIF関数を用いたエクセルにて特定の文字を含むセルを抽出(検索)する方法が完了です。
エクセルにて特定の文字を含むセルの横(右隣)を抽出(検索)する方法【IFERROR関数、RIGHT関数、LEN関数、FIND関数】
エクセルにて特定の文字を含むセルの横(右隣)を抽出(検索)する方法は、上述の通りIFERROR関数、RIGHT関数、LEN関数、FIND関数の組み合わせを使用すると良いです。
先ほどのリストを用いて説明します。
今回は特定の文字として「Z」を含むセルの右隣の文字列を抽出します。そのためE列に「特定文字の右隣を抽出」と記載します。
準備ができましたので、E列の「特定文字の右隣を抽出」に関数を入れます。
具体的には、=IFERROR(RIGHT(A2,LEN(A2)-FIND(*Z*,A2,1)),””)と記載しましょう。
この数式の意味を確認していきます。
FIND関数:特定の文字までの文字数を数える関数で
FIND(検索文字列、対象、[開始位置])
と使います。
・検索文字列(検索ワード):特定の文字として「Z」
※特定の文字として「Z」をカウントします。特定の文字列をカウントするので、文字列の前後に「”」をつけます。今回の場合は「”Z”」と入力します。
・対象(検索対象のセル):A2
・開始位置(数を数える際の開始位置):1文字目からカウント開始
※何文字目から数を数えるかを決めます。「1」とすれば文字列の1文字目からカウントを開始します。
今回の場合は「1」と入力します。
LEN関数は何文字あるかを数える関数で
LEN関数では=LEN(文字列)
とします。
・文字列(検索対象のセル):A2
※A2の文字数を数えます。
RIGHT関数:文字列の右側から特定の文字数の文字を抽出する関数で
RIGHT関数では=RIGHT(文字列、[文字数])
とします。
・文字列(検索対象のセル):A2
・文字数:特定の文字として「Z」より右隣のもの
※LEN関数とFIND関数を用いて、特定の文字「Z」以降の文字数を出します。LEN関数によってA2の総文字数を出しており、そこからFIND関数によって出した特定の文字「Z」までの文字数を引くことで算出します。
今回の場合は、「LEN(A2)-FIND(“Z”,A2,1)」と記入します。
IFERROR関数は条件式を作り、その条件に一致するかしないかによって動作を変えるもので、
IFERROR関数では=IFERROR(値、エラーの場合の値)
と指定しましょう。
・値:③の関数結果
※③の関数の内容をそのままIFERROR関数の条件式に入れ込みます。
今回の関数で一致するものがなかった場合、エラーになります。その際、セルにエラー値でなく、「データがありません」と表示させるためにIFERROR関数を使用します。
今回の場合は「RIGHT(A2,LEN(A2)-FIND(“Z”,A2,1))」と入力します。
・エラーの場合の値(エラーが出た場合の表示):「データがありません」
※空欄は先ほどの「”」を使用します。今回の場合は「””」と入力します。
としましょう。
ENTERを押すと特定文字を含むかの確認の結果、特定文字を含むものがあればA2の内容で特定文字より右隣のものを抽出、一致するものがなければ空欄になります。
今回A2セルの「123-Z5356」は特定文字「Z」を含んでいるのでE2に「5356」と表示されます。
式を他の行にもコピーすると、3行目以降にも確認結果が表示されます。
これで、IFERROR関数、RIGHT関数、LEN関数、FIND関数を用いたエクセルにて特定の文字を含むセルの横(右隣)を抽出(検索)する方法が完了です。
まとめ エクセルにて特定の文字を含むセルを抽出(検索)する方法
この記事では「エクセルにて特定の文字を含むセルに○をつける方法」「エクセルにて特定の文字を含むセルを抽出(検索)する方法」「エクセルにて特定の文字を含むセルの横(右隣)を抽出(検索)する方法」について解説しました。
各種関数を組み合わせれば簡単に特定文字を含むかの確認や抽出をすることができます。
エクセルでのさまざまな処理を理解し、業務に役立てていきましょう。