FILTER関数で特定の文字列を「含まない」条件にする方法

ここでは、エクセルの「FILTER関数で特定の文字列を含まない条件にする方法」を解説します。

 

FILTER関数はワイルドカードが使えないので、ちょっとしたコツが必要です。

1.まずはやりたいことを確認

まずはやりたいことを、例を含めて確認します。

 

1-1.FILTER関数を「含まない条件」にしたい

やりたいことは、「FILTER関数を含まない条件にする」です。

 

指定した文字列が含まれないデータのみを、FILTER関数で抽出します。

 

ただし、ワイルドカードを使いません。

 

1-2.例を確認

一つ例を見てみましょう。

「元データ」には、出張の実績が入力されています。

 

この表から、「社員名に『川』が入っていない人」を抽出してみます。

このように、「特定の文字列を含まない」データを抜き出す方法です。

2.数式の形と引数の入れ方

次に、「FILTER関数で特定の文字列を含まない条件にする」数式の形と引数の入れ方を確認します。

 

2-1.数式の形

数式の形は、次の通りです。

=FILTER(配列,NOT(IFERROR(FIND("条件値",検索範囲),0)),[空の場合])

引数「含む」のところにFIND関数を使い条件値を検索させ、エラーになった個所をIFERROR関数で0にし、その後NOT関数で0とそれ以外をひっくり返します。

 

2-2.引数の入れ方

FILTER関数にはない、「条件値」と「検索範囲」について説明します。

 

(1)条件値

「条件値」には、「含まない条件にしたい文字列」を入れます。

 

例えば「川」を含まない、としたい場合は「"川"」となります。

 

(2)検索範囲

「検索範囲」には、「条件値を検索したい範囲」を入れます。

 

ポイントは、次の通りです。

ポイント
  • 1列で指定する(複数列はダメ)
  • 行の範囲を「配列」と合わせる

「行の範囲」とは、画面の左側にある数値の範囲のことです。

 

例えば配列が「A1:A10」だったら、検索範囲も「1行目から10行目」にします。

3.数式の簡単な作り方

数式の簡単な作り方を見てみます。

「元データ」から、「社員名に『川』が入っていない人」を抽出してみます。

 

以下手順です。

 

(1)以下の数式をコピーし、セルに貼り付ける

【コピーする数式】

=FILTER(配列,NOT(IFERROR(FIND("条件値",検索範囲),0)),[空の場合])

 

(2)「配列」の文字を消し、「元データの範囲」を指定する

 

(3)「条件値」の文字を消し、「含まない条件にする文字列」を指定する

 

(4)「条件範囲」の文字を消し、「条件値の検索範囲」を指定する

 

(5)「,[空の場合]」を消す(必要に応じて指定する)

 

(6)Enterキーを押せば完了

セルA13に入れた数式は、次の通りです。

=FILTER(A4:G9,NOT(IFERROR(FIND("川",E4:E9),0)))

 

これで、FILTER関数を「特定の文字列を含まない条件」にすることができます。

 

以上、参考になれば幸いです。


口コミ・評判のいいExcel本の紹介】


Top