編集者注: この記事はもともと 2010 年 7 月に公開され、この記事のビデオ チュートリアルは 2018 年 12 月に公開されました。このプログラムは多少異なって見えるかもしれませんが、このチュートリアルで示されている手順は同じです。
データのサブセットを表示することは、多くのExcelユーザーにとって日常的な作業です。オートフィルターを使えば表示するデータを絞り込むことができますが、実際のデータに依存するため、限界があります。Excelの高度なフィルター機能は、少し設定が必要ですが、オートフィルターよりも柔軟で強力です。式を使ってレコードを一致させるだけでなく、AND演算子やOR演算子を使って式を組み合わせることもできます。まさにパワフルです!
このブログ投稿は、TechRepublic フォトギャラリーとしてもご覧いただけます。
Excel の高度なフィルター機能には、次の 3 つの要素が必要です。
- データ
- 条件を式として指定する条件範囲。
- 抽出範囲。Excel では、条件を満たすデータが表示されます。
シンプルなオートフィルター
より高度な例に入る前に、Northwind(Accessに付属するデータベース)のProductsテーブルの一部のデータを使った簡単なオートフィルターの例を見てみましょう。オートフィルターを適用するには、A1:F1の列見出しを選択し、[データ]メニューから[オートフィルター]を選択します。Excel 2007および2010では、[データ]メニューをクリックし、[並べ替えとフィルター]グループの[フィルター]をクリックします。選択範囲の各列にドロップダウン矢印が表示されます。この機能を使うと、注文が入っていない製品を特定するといった簡単なフィルター処理を実行できます。この機能は素早く簡単に使用できますが、場合によっては不十分な場合があります。(フィルターを削除するには、同じリストから[すべて]を選択するだけです。)
高度なフィルターと
さて、価格が20ドル以上の商品のうち、現在在庫が10個以下の商品を知りたいとします。このフィルタリングタスクには2つの要件(2つの基準)があり、両方を満たす必要があります。つまり、商品は価格が20ドル以上で、在庫が10個以下である必要があります。オートフィルターではこれは不可能なので、高度なフィルターを試してみましょう。
この場合、条件範囲に必要なのは「単価」と「在庫数」の2つの列だけです。これらの列見出しだけを分かりにくい場所にコピーしておくのも良いでしょう。他のフィルターで必要になるかもしれないので、すべての列見出しをコピーしておくことをお勧めします。
参照: クラッシュコース: Microsoft Excel – 初心者 (Tech Pro Research)
次に、Excelが理解できる表現でフィルタリング要件を式で指定する必要があります。この場合、どちらの式も単純な比較です。
単価: >=20
在庫数: <=10
ご覧のとおり、条件範囲は実際のデータの上にあります。この配置は効率的で、アクセスも容易です。両方の式は同じ行(行2)にあります。両方の式を同じ行に配置することで、Excelは暗黙的にAND演算子を適用して式を結合します。
残っているのは、次のようにフィルターを適用することだけです。
- データ範囲内の任意のセルをクリックします。
- 「データ」メニューをクリックし、「フィルター」→「フィルターの詳細設定」をクリックします。Excel 2007および2010では、「データ」タブをクリックし、「並べ替えとフィルター」グループの「フィルターの詳細設定」をクリックします。
- デフォルト設定の「リストをインプレースでフィルタリング」を維持します。
- この場合、Excel はリスト範囲を自動的に正しく入力します。
- 条件範囲(A1:F2)を指定します。列見出しと条件行(複数行)を指定するだけで済みます。
- [OK]をクリックします。
価格が20ドル以上で在庫が10個以下の商品が8つあります。フィルターを削除するには、「データ」メニューをクリックし、「フィルター」|「すべて表示」をクリックしてください。
高度なフィルターと
暗黙的なOr演算子を指定するには、式を別々の行に配置する必要があります。以下の条件は、価格が20ドル以上の商品、または在庫数が10個以下の商品を検索します。
式の 1 つを 1 行下に移動して条件範囲を調整した後、次のように新しいフィルターを適用します。
- データ範囲内の任意のセルをクリックします。
- 「データ」メニューをクリックし、「フィルター」→「フィルターの詳細設定」をクリックします。Excel 2007および2010では、「データ」タブをクリックし、「フィルターの詳細設定」をクリックします。
- デフォルトの「リストをその場でフィルター」設定を保持します。
- この場合、Excel はリスト範囲を自動的に正しく入力します。
- 抽出条件範囲(A1:F3)を指定します。今回は範囲に行3が含まれていることに注意してください。
- 「OK」をクリックします。多くのレコードがいずれかの条件を満たしています。
高度なフィルターは1つの式だけでも使用できますが、暗黙的なAnd演算子とOr演算子を使用することで、非常に複雑かつ強力なフィルターを実現できます。ただし、And演算子とOr演算子を適用する際には、式とその配置が適切であることを確認してください。
アフィリエイト開示: TechRepublic はこのページで紹介されている製品およびサービスから手数料を得る場合があります。