Excelのテキストフィルターを使うと、顧客名、商品名、部署名、メールアドレスなどの文字データから、必要な行だけを素早く抽出できます。
「指定の文字を含む」「指定の文字で始まる」「複数の条件に一致する」といった絞り込みは、オートフィルターの検索欄だけでは対応しにくい場面もあります。
そこでこの記事では、テキストフィルターを追加する基本操作、複数条件での抽出、ワイルドカードや数式を使った応用までを確認します。
テキストフィルターは文字列を条件にして行を抽出する機能です。
AND条件は2つの条件を両方満たすデータ、OR条件はどちらかを満たすデータを表示します。
サンプルデータでは、1行目を見出し行として操作します。
エクセルでテキストフィルターを追加する方法
それではまず、文字列の列にテキストフィルターを設定する基本操作について解説していきます。
| 担当者 | 商品名 | 部署 |
|---|---|---|
| 田中 | ノートPC | 営業部 |
| 佐藤 | デスクトップPC | 開発部 |
| 鈴木 | モニター | 営業部 |
フィルターボタンの追加
まずは、抽出したい一覧表の中にある任意のセルを選択します。
次にリボンのデータタブを開き、並べ替えとフィルターのグループにあるフィルターボタンをクリックしましょう。
1行目の各見出しセルに下向きの矢印が表示されたら、オートフィルターの追加は完了です。
表全体をドラッグで選択しなくても、連続したデータ範囲内のセルを選べばExcelが範囲を判断します。
【操作のポイント】途中の空白行や空白列があると、意図した範囲にフィルターが付かないことがあります。
テキストフィルターの選択
続いて、文字で絞り込みたい列の見出しにある矢印をクリックします。
表示されたメニューでテキストフィルターにマウスポインターを合わせると、指定の値に等しい、指定の値を含む、指定の値で始まるなどの条件を選べます。
たとえば商品名からPCを含むデータを探す場合は、指定の値を含むを選択します。
数値列では数値フィルター、日付列では日付フィルターが表示されるため、文字列の列であることを確認してからテキストフィルターを使うことが大切です。
【操作のポイント】検索欄のチェック操作ではなく、条件を細かく決めたいときにテキストフィルターを選びます。
含む条件の入力
指定の値を含むをクリックすると、オートフィルターオプションの画面が開きます。
左側の条件欄が指定の値を含むになっていることを確認し、右側の入力欄へPCと入力してください。
OKをクリックすると、ノートPCとデスクトップPCが表示され、モニターの行は非表示になります。
「含む」は入力した文字列がセル内のどこにあっても一致します。
PCと入力した場合、PC、ノートPC、PC周辺機器のような表記が対象です。
フィルターで除外された行は削除されず、行番号が飛んで見える状態になります。
【操作のポイント】条件欄へ余分な空白が入ると一致しないため、入力後に文字列を確認しましょう。
複数条件によるテキスト抽出
続いては、同じ列に複数の文字条件を追加して抽出する方法を確認していきます。
| 顧客名 | 地域 | 商品分類 |
|---|---|---|
| 東京商事 | 関東 | PC機器 |
| 大阪商事 | 関西 | 周辺機器 |
| 東京物流 | 関東 | 事務用品 |
AND条件による絞り込み
同じ列で東京を含み、さらに商事を含む顧客名を抽出する場合は、テキストフィルターの指定の値を含むを選びます。
1つ目の入力欄に東京、2つ目の入力欄に商事を入力し、中央の選択肢でかつを選択してください。
この設定では、東京と商事の両方を含む東京商事だけが表示されます。
かつはAND条件であり、すべての条件を満たすデータだけを残す指定です。
条件1が「東京を含む」、条件2が「商事を含む」、結合方法が「かつ」の場合、対象は東京商事です。
【操作のポイント】条件が厳しすぎて該当なしになる場合は、入力文字や全角半角の違いも確認します。
OR条件による絞り込み
東京商事と大阪商事のように、複数の候補をまとめて抽出したい場合は、条件の結合をまたはに変更します。
1つ目の条件には東京を含む、2つ目の条件には大阪を含むを設定すると、どちらかの文字を含む行が表示されます。
またははOR条件であり、片方だけに一致するデータも抽出対象になります。
地域名、担当者名、支店名など、候補が少ない文字列を比較するときに便利な方法です。
【操作のポイント】同一列では入力欄が2つまでのため、3つ以上の候補は検索欄のチェックや詳細設定も検討します。
別列にまたがる条件設定
顧客名が東京を含み、地域が関東であるデータを抽出する場合は、各列に別々のフィルターを設定します。
最初に顧客名列で東京を含むという条件を指定し、その後に地域列で関東を選択してください。
列をまたいで設定したフィルターは自動的にAND条件として働くため、両方に一致する行だけが残ります。
同じ列内の「かつ」「または」はオートフィルターオプションで決めます。
異なる列の条件は、それぞれの列の矢印から設定する仕組みです。
複数列の条件では、見出しの矢印がフィルター状態を示すアイコンに変わります。
【操作のポイント】結果が少なすぎるときは、各列のフィルターを一度解除して条件を見直しましょう。
ワイルドカードを使った文字列条件
続いては、あいまいな文字列を柔軟に検索できるワイルドカードの使い方を確認していきます。
| 管理番号 | 商品名 | 状態 |
|---|---|---|
| A-001 | 青ボールペン | 在庫あり |
| A-015 | 赤ボールペン | 在庫あり |
| B-001 | 青マーカー | 欠品 |
アスタリスクによる任意文字の指定
アスタリスクは、0文字以上の任意の文字列を表すワイルドカードです。
管理番号列でAから始まる番号だけを抽出したいときは、指定の値に等しいを選び、条件欄にA-*と入力します。
A-*はA-001やA-015には一致し、B-001には一致しません。
A-* は A- の後ろにどのような文字が続いても一致する条件です。
【操作のポイント】テキストフィルターの「含む」と「等しい」を使い分けると、意図しない一致を減らせます。
疑問符による一文字指定
疑問符は、任意の1文字だけを表すワイルドカードです。
たとえばA-0?1と入力すると、A-001やA-011のように、中央の1文字だけが異なるデータを対象にできます。
コード番号の桁数が決まっている一覧では、疑問符を使うことで文字数まで含めた条件指定が可能です。
アスタリスクは文字数を問わない指定です。
疑問符は1文字分だけを置き換える指定です。
【操作のポイント】記号そのものを検索したい場合は、ワイルドカードとして解釈される可能性を考慮します。
検索欄との使い分け
少数の文字列を一時的に探すだけなら、フィルターメニュー上部の検索欄も便利です。
一方で、始まる、終わる、等しい、含まないといった条件を明確にしたい場合はテキストフィルターが向いています。
繰り返し利用する帳票では、条件の意味が明確なテキストフィルターのほうが確認しやすいでしょう。
【操作のポイント】検索欄で選んだチェックは、テキストフィルターの条件と重ねて扱わないようにします。
数式による複数条件の判定
続いては、フィルター前に判定列を作成し、数式で複数条件を管理する方法を確認していきます。
| 商品名 | 部署 | 判定 |
|---|---|---|
| ノートPC | 営業部 | 抽出 |
| モニター | 営業部 | 除外 |
SEARCH関数による含む判定
商品名にPCを含むかどうかを判定するには、C2セルに次の数式を入力します。
=IF(ISNUMBER(SEARCH(“PC”,A2)),”抽出”,”除外”)
SEARCH関数は文字列を見つけた位置を返し、見つからないとエラーになります。
ISNUMBER関数で数値かどうかを判定することで、PCが含まれる場合だけ抽出という文字を返す仕組みです。
C2の右下にあるフィルハンドルを下へドラッグすると、数式が各行へコピーされます。
【操作のポイント】SEARCH関数は英字の大文字小文字を区別しないため、通常の文字検索に使いやすい関数です。
AND関数による二条件判定
商品名にPCを含み、部署が営業部である行だけを抽出する場合はAND関数を組み合わせます。
=IF(AND(ISNUMBER(SEARCH(“PC”,A2)),B2=”営業部”),”抽出”,”除外”)
AND関数の中にある2つの条件がともに真のときだけ、結果は抽出になります。
数式の判定列をフィルターすれば、二つ以上の複雑な条件も一覧で確認できます。
【操作のポイント】文字列が入力されたセルを比較する式では、検索する文字を二重引用符で囲みます。
判定列へのフィルター適用
数式を最終行までコピーしたら、判定列の矢印をクリックして抽出だけにチェックを残します。
これにより、元データを直接変更せずに、数式条件へ一致する行だけを表示できます。
複数のキーワードを頻繁に変更する場合は、条件文字列を別セルに入力して数式から参照する方法も有効です。
条件をセル参照にすると、式を編集せずに抽出条件を切り替えられます。
【操作のポイント】判定列は後から確認できるため、複雑な抽出条件を他の人へ共有するときにも役立ちます。
テキストフィルターの解除と抽出時の注意点
続いては、設定した条件を解除する操作と、文字列抽出で起こりやすい注意点を確認していきます。
| 氏名 | 分類 | 表示状態 |
|---|---|---|
| 田中太郎 | 対象 | 表示 |
| 山田花子 | 対象外 | 非表示 |
列ごとのフィルター解除
特定の列だけ条件を解除したいときは、その列の矢印をクリックして、列名からフィルターをクリアを選択します。
他の列に設定した抽出条件は残るため、段階的に絞り込みを見直したい場合に便利です。
列単位の解除は、複数条件のどこで対象外になったかを調べるときにも役立ちます。
【操作のポイント】フィルターをクリアしても、オートフィルターの矢印自体は表に残ります。
すべての条件のクリア
データタブのクリアをクリックすると、設定中のフィルター条件をまとめて解除できます。
非表示だった行が再表示され、表を抽出前の状態へ戻せます。
フィルターボタンそのものを消したい場合は、データタブのフィルターをもう一度クリックしてください。
【操作のポイント】条件のクリアとフィルター機能の削除は別の操作として覚えると混乱しません。
空白文字と表記ゆれの確認
期待したデータが表示されない場合は、セルの前後に空白が入っていないかを確認します。
全角スペースと半角スペース、全角英数字と半角英数字、旧字体などの違いも一致しない原因になります。
見た目が同じ文字列でも、セル内の文字コードや空白の有無によってフィルター結果は変わります。
データを整える際はTRIM関数で余分な半角スペースを除去できます。
表記を統一してからフィルターを設定すると、抽出漏れを減らせます。
【操作のポイント】抽出前に並べ替えや検索でデータの表記を確認すると、条件作成がスムーズです。
まとめ エクセルで複数条件のテキストフィルターを追加する方法
Excelでテキストフィルターを追加するには、一覧表内のセルを選択してデータタブからフィルターを有効にし、対象列の矢印からテキストフィルターを選択します。
文字列を一部でも含むデータは指定の値を含む、冒頭や末尾を限定したいデータは始まるや終わる、完全一致を確認したいデータは等しい条件が便利です。
同じ列の複数条件はかつとまたはで設定し、別列の条件は複数のフィルターを重ねて設定します。
さらに複雑な抽出が必要なら、SEARCH関数、ISNUMBER関数、AND関数を使った判定列を作成すると管理しやすくなります。
条件に一致しない原因は空白や表記ゆれであることも多いため、元データを整えながらテキストフィルターを活用しましょう。