
Excelのオートフィルターで、一覧の上と下に離れた値(たとえば「A」と「Z」)だけを表示したいときは、2つまでなら「テキスト フィルター」のOR条件、3つ以上なら「詳細設定」かFILTER関数を使うのが最短です。
ただし、検索ボックスや詳細設定には、エラーも出ずに余計な行まで抽出してしまう落とし穴があります。この記事では5つの方法と、その落とし穴の避け方をまとめて解説します。
状況別:どの方法を使えばいい?
まず、自分の状況に合う方法を下の表で選んでください。
| あなたの状況 | おすすめの方法 | ポイント |
|---|---|---|
| 一覧が長く、スクロールで探すのが面倒 | 方法1:検索ボックス | 値を検索して1つずつ追加できる |
| 抽出したい値がちょうど2つ | 方法2:テキスト フィルターのOR条件 | 1回のダイアログ操作で完了 |
| 3つ以上の値をまとめて抽出したい | 方法3:詳細設定(フィルター オプション) | 全バージョンで使える。条件は表に書いておく |
| 同じ絞り込みを何度も切り替える | 方法4:テーブル+スライサー | ボタンをCtrl+クリックで複数選択 |
| 元の表は残し、別の場所に結果を自動表示したい | 方法5:FILTER関数 | Microsoft 365/Excel 2021以降で使用可 |
| Excel 2019以前で、関数で自動判定したい | 補足:補助列+COUNTIF | 補助列のTRUEだけをフィルターで表示 |
前提:オートフィルターの基本操作
一覧が短ければ、標準のチェック操作がいちばん早い場合もあります。
- 表の中の任意のセルを選択します。
- 「データ」タブの「フィルター」をクリックします。
- 見出しに表示された▼をクリックします。
- 「(すべて選択)」のチェックを外します。
- 「A」と「Z」にチェックを入れます。
- 「OK」をクリックします。
この方法は、一覧が長いとスクロールに時間がかかります。以下の方法で効率化しましょう。

方法1:検索ボックスで1つずつ追加する
一覧が長いときは、▼のメニュー内にある検索ボックスを使うと、スクロールせずに目的の値へたどり着けます。ポイントは、2つ目以降の値を「追加」として指定することです。
手順
- 見出しの▼をクリックします。
- 検索ボックスに「A」と入力します。
- 表示された候補を確認し、不要な値のチェックを外します。
- 「OK」をクリックします。
- もう一度、同じ見出しの▼をクリックします。
- 検索ボックスに「Z」と入力します。
- 「現在の選択範囲をフィルターに追加する」にチェックを入れます。
- 候補の中の不要な値のチェックを外し、「OK」をクリックします。

「Z」を検索し「現在の選択範囲をフィルターに追加する」にチェックした状態
「現在の選択範囲をフィルターに追加する」にチェックを入れずにOKを押すと、先に指定した「A」の抽出が解除され、「Z」だけの表示に置き換わります。値を足すたびに、このチェックを入れてください。
注意:検索は「その文字を含む値」すべてがヒットする
検索ボックスは、入力した文字を含む値をまとめて候補に出します。たとえば「A」で検索すると、「A」だけでなく「Apple」や「Zebra」のような値も候補に入る場合があります。
そのままOKを押すと、エラーも警告もなく、意図しない行まで表示されます。手順3と手順8で、候補一覧を必ず目で確認してから確定してください。
方法2:テキスト フィルターのOR条件で2つを一発指定
抽出したい値が2つなら、この方法が最短です。「AまたはZ」という条件を1つのダイアログで指定できます。
手順
- 見出しの▼をクリックします。
- 「テキスト フィルター」をクリックします。
- 「指定の値に等しい…」をクリックします。
- 「オートフィルター オプション」ダイアログの上段で「と等しい」を選び、右の欄に「A」と入力します。
- 中央の「OR」を選択します。
- 下段で「と等しい」を選び、右の欄に「Z」と入力します。
- 「OK」をクリックします。
「と等しい」は完全一致の条件なので、方法1と違って「Apple」などは混ざりません。数値の列では「テキスト フィルター」の代わりに「数値フィルター」が表示されます。

このダイアログで指定できる条件は2つまでです。3つ以上の値を指定したい場合は、次の方法3以降を使ってください。
方法3:詳細設定(フィルター オプション)で3つ以上もまとめて抽出
「詳細設定」は、シート上に書いた条件表を使って抽出する機能です。条件を縦に並べるだけで「または(OR)」の条件になるため、値がいくつあっても一度に抽出できます。
準備:条件表を作る
例として、A1:C101に「商品コード」「商品名」「数量」の表があるとします。表と1列以上空けた場所(ここではE列)に、次のように条件表を作ります。
| セル | 入力する内容 | 意味 |
|---|---|---|
| E1 | 商品コード | 元の表の見出しと同じ文字 |
| E2 | =”=A” | 「A」と完全に一致 |
| E3 | =”=Z” | 「Z」と完全に一致 |
E1の見出しは、元の表の見出しと一字一句同じにしてください。スペースの有無が違うだけでも、正しく抽出されません。
手順
- 元の表の中の任意のセルを選択します。
- 「データ」タブの「並べ替えとフィルター」グループにある「詳細設定」をクリックします。
- 「フィルター オプションの設定」ダイアログで「選択範囲内」を選びます。
- 「リスト範囲」が「$A$1:$C$101」になっていることを確認します。
- 「検索条件範囲」に「$E$1:$E$3」を指定します。
- 「OK」をクリックします。
抽出結果を元の表とは別の場所に書き出したい場合は、手順3で「指定した範囲」を選び、「抽出範囲」に出力先の左上セルを指定します。
注意:「A」とだけ入力すると「Aで始まる値」がすべて抽出される
詳細設定では、条件に「A」とそのまま入力すると、「A」で始まる値すべて(Apple、Asiaなど)が抽出されます。エラーは出ないため、気付かずに集計してしまう危険があります。
完全一致で抽出したいときは、上の表のように「=”=A”」の形で入力してください。セルには「=A」と表示されます。逆に「Aで始まる値をまとめて抽出したい」ときは、あえて「A」とだけ入力する使い方もできます。
注意:条件を変えても結果は自動で更新されない
詳細設定の結果は、条件表を書き換えても自動では変わりません。条件を変更したら、もう一度「詳細設定」を実行してください。自動で更新させたい場合は、方法5のFILTER関数が向いています。
方法4:テーブル+スライサーでボタンを複数選択
同じ表で絞り込みを何度も切り替えるなら、スライサーが便利です。値がボタンとして並ぶため、▼を開かずにクリックだけで抽出できます。
手順
- 表の中の任意のセルを選択し、「挿入」タブの「テーブル」をクリックしてテーブルに変換します。
- テーブル内のセルを選択した状態で、「挿入」タブの「スライサー」をクリックします。
- 「スライサーの挿入」ダイアログで、絞り込みたい列(例:商品コード)にチェックを入れ、「OK」をクリックします。
- スライサーの「A」ボタンをクリックします。
- Ctrlキーを押しながら「Z」ボタンをクリックします。
Ctrlキーを押しながらクリックすれば、3つ目以降も追加できます。絞り込みを解除するには、スライサー右上の「フィルターのクリア」をクリックします。

方法5:FILTER関数で別の場所に自動抽出
FILTER関数を使うと、元の表はそのままに、条件に合う行だけを別の場所へ表示できます。元データが変わると結果も自動で更新されます。FILTER関数は、Microsoft 365、Excel 2024、Excel 2021などで使用できます。Excel 2019以前では使えません。
基本形:AとZを指定する
A2:C101の表から、A列が「A」または「Z」の行を抽出する数式です。結果を表示したいセルに入力します。
=FILTER(A2:C101,(A2:A101=”A”)+(A2:A101=”Z”),”該当なし”)
- 第1引数「A2:C101」:抽出元の表です。
- 第2引数「(A2:A101=”A”)+(A2:A101=”Z”)」:条件を「+」でつなぐと「または(OR)」になります。
- 第3引数「”該当なし”」:該当する行がないときに表示する文字です。省略すると、該当なしのときに「#CALC!」エラーになります。
応用:抽出する値をセルに並べて管理する
値が3つ、4つと増えると、「+」でつなぐ数式は長くなります。抽出したい値をE2:E4などに縦に並べておき、次の数式を使うと便利です。
=FILTER(A2:C101,ISNUMBER(MATCH(A2:A101,E2:E4,0)),”該当なし”)
この形なら、抽出する値を変えたいときもE列のセルを書き換えるだけで済み、数式を直す必要がありません。
注意:大文字・小文字は区別されず、余分なスペースは別の値になる
FILTER関数の「=」による比較では、大文字と小文字は区別されません。「A」を指定すると「a」の行も抽出されます。
一方、「A 」のように末尾にスペースが入ったセルは、見た目は同じでも「A」とは一致せず、エラーなしで抽出から漏れます。件数が合わないときは、元データに余分なスペースが入っていないか確認してください。
補足:FILTER関数が使えない場合は補助列で判定する
Excel 2019以前でも、補助列を作れば「指定した値に一致する行」を関数で判定できます。抽出したい値をE2:E4に並べた例です。
- 表の右隣の空いている列(例:D列)の見出しに「抽出」と入力します。
- D2に「=COUNTIF($E$2:$E$4,A2)>0」と入力します。
- D2の数式を最終行までコピーします。
- D列の▼をクリックし、「TRUE」だけにチェックを入れて「OK」をクリックします。
抽出する値を変えたいときは、E列を書き換えてからフィルターを再適用してください。COUNTIF関数は条件に「*」や「?」を使うとワイルドカードとして扱うため、抽出したい値にこれらの記号が含まれる場合は注意が必要です。
操作を速くするキーボードショートカット
| 操作 | キー |
|---|---|
| フィルターのオン/オフ | Ctrl+Shift+L |
| 見出しセルで▼のメニューを開く | Alt+↓ |
| 選択範囲をテーブルに変換 | Ctrl+T |
| スライサーで項目を追加選択 | Ctrl+クリック |
よくある質問
フィルターの一覧に、あるはずの値が表示されません
フィルターの一覧に表示されるのは、重複しない最初の10,000項目までです。値の種類が非常に多い列では、一覧に出てこない値があります。その場合は、方法2のOR条件か方法3の詳細設定のように、値を直接入力する方法を使ってください。
ほかの列のフィルターを設定したら、一覧から値が消えました
1つの列でフィルターを設定すると、ほかの列の一覧には、現在表示されている行の値だけが表示されます。先に設定したフィルターを解除するか、絞り込む順番を見直してください。
抽出結果だけを別のシートに出したいです
結果を自動で更新させたい場合は、出力先のシートにFILTER関数を入力するのが簡単です。数式の第1引数と第2引数で、元のシートの範囲を指定します。FILTER関数が使えない環境では、詳細設定の「指定した範囲」を使います。
まとめ
| 方法 | 向いている場面 | 注意点 |
|---|---|---|
| 検索ボックス | 一覧が長い | 含む値もヒットする。追加時はチェックを忘れずに |
| テキスト フィルターのOR条件 | 値が2つ | 3つ以上は指定できない |
| 詳細設定 | 値が3つ以上、全バージョン対応 | 「A」だけだと前方一致。完全一致は =”=A” |
| スライサー | 絞り込みを頻繁に切り替える | 表をテーブルに変換する必要がある |
| FILTER関数 | 別の場所に自動抽出したい | Excel 2019以前は不可。末尾スペースに注意 |
2つの値をすぐに絞り込みたいなら、まずは「テキスト フィルター」のOR条件を試してください。抽出結果の件数が想定と違うときは、部分一致・前方一致・余分なスペースの3点を疑うと、原因をすばやく特定できます。












コメント