Excelのフィルタオプションで検索範囲を指定したにもかかわらず、正常に動作しない事例を紹介します。
概要
Excelのフィルタの詳細機能のフィルタオプションで検索範囲を指定してフィルタすると
- フィルタされすべての項目が非表示になる
- 項目がまったくフィルタされない
- 指定した検索範囲の値とは関係ない値がフィルタされ、フィルタが誤動作する
といった現象が発生する場合があります。
原因
原因は元のリストとフィルタの検索範囲の列名が一致していないことが原因です。
現象
どのような現象かを確認してみます。
下図の表を用意します。
名称 | 値 |
ぺんぎん | 100 |
らくだ | 120 |
あひる | 130 |
くじら | 150 |
ぺんぎん | 90 |
ぺんぎん | 88 |
らくだ | 120 |
らくだ | 140 |
あひる | 96 |
くじら | 80 |
らくだ | 160 |
別のシートにフィルタする項目を記載したリストを用意します。
表を選択します。
表を選択した状態のまま、ツールリボンの[データ]タブをクリックし[並べ替えとフィルター]のセクションの[詳細設定]ボタンをクリックします。
[フィルター オプションの設定]ダイアログが表示されます。
フィルター オプションの設定ダイアログの[検索条件範囲]の欄をクリックし、別のシートに用意した検索範囲を選択します。
設定後、[フィルター オプションの設定]ダイアログの下部の[OK]ボタンをクリックします。
元のリストがフィルタされますが、結果がおかしいです。検索範囲には「らくだ」と「くじら」を指定していますが「ぺんぎん」の項目が表示されています。
対処法
原因のセクションでも紹介した通り、フィルターオプションを利用する場合は、元のリストの列名と検索範囲の列名が一致している必要があります。先に用意した検索範囲のシートを下記に修正します。
元の表のフィルタ対象の列名[名称]と検索範囲の列名を[名称]で揃えます。
先の手順と同様に、元のリストを選択しツールリボンの[データ]タブの[並べ替えとフィルター]セクションの[詳細設定]ボタンをクリックします。
[検索条件確認]の欄をクリックし、修正した検索範囲を選択します。選択後ダイアログの[OK]ボタンをクリックします。
正しいフィルタ結果が表示されます。
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2024-01-21
作成日: 2017-05-18