見出し画像

知らないと損するExcel Tips:フィルター編


1.はじめに


こんにちは。株式会社SHIFT ITソリューション部の力石です。主にお客さまのアプリケーション開発プロジェクトで、性能改善、品質向上などの非機能関連のコンサルティングをしています。

Excelのフィルターを使用したときに、「なぜこのような動きになるのだろう」と疑問に思ったことはないでしょうか?この記事では、たくさんあるフィルターの作成方法を紹介しつつ、いろいろ試して見つけた法則と、便利に使用する方法を紹介します。

2.フィルター機能とは


フィルター機能は、表から表示したいデータだけに絞ることができます。
フィルターを作成するとヘッダーには下図の赤丸のように▼が表示されます。

フィルターで非表示となった行があると下図の青丸のように行番号が青色になります。行番号が青色になっていればフィルターで絞り込んでいることがわかります。逆に黒文字の場合は絞り込んでないと判断できます。

3.作成方法:メニュー使用パターン1


フィルターを作成するにはいくつか方法があります。まずはメニューをたどりながら作成する方法です。
フィルターを設定したいデータのどこかのセルを選択(①)し、[データ]タブ(②)の[フィルター](③)を選択します。この時点でフィルターが作成され、ヘッダー行には▼が表示されていることが確認できます(④)。

注意点として、フィルターにできないセルを選択してこの手順を実施した場合はエラーメッセージが表示されます。

逆にフィルターを削除する場合も、同様に[データ]タブ→[フィルター]を選択し、[フィルター]を選択します。 フィルターは1シートに1つしか作成できないのでフィルターが存在しない場合は作成、存在する場合は削除となります。

4.作成方法:メニュー使用パターン2


メニューをたどりながら作成する方法の2つめです。

フィルター設定したいデータのどこかのセルを選択し、[ホーム]タブ→[並び替えとフィルター]→[フィルター]を選択します。これでもフィルターが作成出来ます。
このメニューだとフィルターの[クリア]と[再適用]も選択可能です。

5.作成方法:ショートカット使用パターン1


ショートカットを使用しフィルターを作成する方法は2つあります。
まずはメニューを使用し操作するのと同様の手順書を、ショートカットでおこなう方法です。
ALT→A→T
※ALTキーを押して、離して。Aキーを押して、離して。Tキーを押して、離す。 (ALTキーを押しながら、Aキーも押しながら、Tキーを押しても可能です)

このショートカットの見つけ方は、ALTキーを押して数秒たつと下図のようにALTに続けて押す文字が表示されます。このようにしてメニュー表示されている処理のショートカットを探すことができます。

1つ目のポイントは各キーは同時に押す必要は無く、1キーごと押して離してを繰り返していきます。

2つめのポイントは、「SC」などと2文字表示された場合は、SキーとCキーを順番に入力していきます。(フィルター関連のショートカットではこのパターンは出てきません)

メニューをマウスでクリックしながら操作できる場合は、同じ考え方でショートカットを見つけれます。

6.作成方法:ショートカット使用パターン2


2つめのショートカットの方法は、Ctrl+Shift+Lです。
この方法の見つけ方は、上図の右側に「フィルター(Ctrl+Shift+L)」と表示されてます。
※「3.作成方法:メニュー使用パターン1」の画像参照

7.範囲の考え方


フィルターを作成したが、フィルターの範囲が想定外になったことはないでしょうか?
ルールは次のようになります。

  • セルを1つのみ選択しフィルター作成した場合は、選択したセルの上下左右と斜めのセルに値が入っている塊が範囲となる

  • 下図の黄色のいずれかを選択した場合は、黄色の部分がフィルターの範囲となります。G4のセルはつながってないのでフィルターの範囲に含まれない

フィルター作成後にフィルター範囲の上下左右と斜めにあたるセルに値を入れた場合はフィルター範囲が自動的に拡張されます。

注意点として、新規の列もフィルター範囲に追加されますが、▼アイコンは追加とならず、値でのフィルターやソートの範囲外となります。

例えば、A4セルに「B]」を記入するとオレンジ色の部分がフィルター対象となるが、▼アイコンは追加とならない(赤丸)。その後C5セルに「C」を記入するとピンク色の部分がフィルター対象となり、▼アイコンが付いている列のみ値でのフィルターやソートの対象となります。

新規の列はフィルター範囲とはなるがフィルター対象の列にはならない、という中途半端な状態になります。

8.範囲を強制的に指定する方法:列を指定


上記では自動的にフィルター範囲が指定される方法を示しましたが、強制的にフィルター範囲とする列を指定する方法もあります。
フィルター範囲とする列のヘッダーを選択して、Ctrl+Shift+Lです。

例えば下図の場合、A,B,C列はフィルター範囲としたいがD列は対象外としたい場合、赤破線で囲ったヘッダー行となる範囲を選択しCtrl+Shift+Lをすると、選択した列でフィルターが作成されます。

9.範囲を強制的に指定する方法:行と列を指定


これまでは自動的にフィルター範囲を設定する方法を示しましたが、強制的にフィルター範囲を指定する方法です。
フィルター範囲とする行と列を全て選択して、Ctrl+Shift+Lです。

例えば下図の場合、店舗Aと店舗Bの両方の表を一度に対象にしてフィルター作成したい場合、これまでの範囲の自動判定では対応できません。そのときは赤破線で囲った範囲を選択しCtrl+Shift+Lをすると、選択した範囲でフィルターが作成されます。

このようにして商品コード「A001」でフィルターした場合は3行目と8行目が表示できます。

10.範囲に列を追加


「7.範囲の考え方」でフィルター対象として新規に列を追加することはできないと説明してきましたが、フィルターを使用して作業をしているうちに、新規に列を作成したいと言うこともあるでしょう。その場合一度フィルター削除をして再度フィルター作成することで実現できますが、フィルター条件が消えるなど時間の無駄となります。
この場合、次の方法で対応が可能です。

最初にフィルター作成をする際に、フィルターの範囲とする右側と左側の列も含めておくという方法です。フィルター範囲としたいヘッダー行の一番右(下図だとA1セル)と左(G1セル)にスペースなど何らかの文字を入れます。その後ヘッダー行を選択し(下図の赤破線)、Ctrl+Shift+Lをするとデータが入っていない箇所の列もフィルター対象となります。

フィルター作成後

これであとから列が増えてもフィルターの再作成をしなくて済みます。今回左右に2個ずつ列を作りましたが、あとからもっと列が必要になった場合は次の方法で列の追加ができます。

フィルター範囲で未使用の列が残っているうちに列の挿入をします。上図だと例えばFとG列の間に列を挿入することでフィルターの再作成することなく対象の列を増やすことができます。
ポイントは、未使用の列がまだあるときに列追加をすることです。未使用列が無くなってからではこの方法は使用できません。

11.まとめ


上記で説明した内容を基に、私がよく利用するフィルター関連の設定方法です。

①表の上を数行空けておく ②表の左を数行空けておく
あとから注釈などを追加したい場合にその都度行や列を追加するのではなく、あらかじめ用意しておくことで作業の効率化が可能です。

③表のタイトルの下に空白行を1つ入れる
フィルターのヘッダー行には▼が表示されます。その場合ヘッダー行の文字が隠れてしまいます。表のヘッダーとフィルターのヘッダーを分けることでこの問題が回避できます。

④ソート後に元の順番に戻せるように連番を付ける
フィルターのソート機能を使用後ファイルを保存した場合は、元の順番に戻すことは出来ません。 オリジナルの順番に戻したい場合のソートキーとして使用するために使用します。

⑤フィルターの範囲とする一番右のカラムにスペースを入力
「10.範囲に列を追加」を実施しています。

⑥フィルター範囲とするヘッダー行を選択してCtrl+Shift+L
「6.作成方法:ショートカット使用パターン2」を実施しています。

⑦ヘッダー行と分かるようにセルに色を付ける ⑧表を見やすいように罫線を付ける
表を見やすいように色と罫線を付けています。

⑨「ウィンドウ枠の固定」をする
スクロール設定した際にヘッダー行はスクロール対象外となるように設定します。
ショートカットは、データ部分の先頭行を選択してALT→W→F→F です。

フィルター機能はExcelの便利な機能の1つですが、Tipsを活用することでより効率化していただければと思います。

【このほかの記事】


執筆者プロフィール:力石 知也
大手SIなどでアプリケーション開発からインフラ関連まで幅広く約30年経験。現在は性能改善、品質向上などの非機能関連のコンサルティングを実施。

お問合せはお気軽に
https://service.shiftinc.jp/contact/

SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/

SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/

SHIFTの導入事例
https://service.shiftinc.jp/case/

お役立ち資料はこちら
https://service.shiftinc.jp/resources/

SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/

PHOTO:UnsplashPawel Czerwinski