No.015
データの最終行が範囲から外れ、フィルターの結果に常に表示される
2003/2007/2010/2013
フィルターを使用してデータの抽出を行うときに、データの最終行が抽出条件にあてはまらないのに表示されてしまう、という不具合があります。
原因はSUBTOTAL関数の使用かと思われます。
抽出データにSUBTOTAL関数を使用している場合は、一度、SUBTOTAL関数のセルをコピーして値の貼り付けを行い関数を取り外すか、SUBTOTAL関数を使用しているセルを削除してください。それで改善する場合は、SUBTOTAL関数が原因ですね。
では、再現してみましょう。
例えば下のようなデータがあります。A列の連番は入力されたものです。
この状態では、問題なく抽出されます。
では、A列はSUBTOTAL関数を使って、抽出表示されているデータの連番を求める式を入れてみます。
=SUBTOTAL(3,$B$2:B2)
式の意味は、範囲におけるデータの個数を調べています。SUBTOTAL関数を使用すると、フィルターで抽出され表示されたセルが対象となります。
さて同じ抽出をすると、抽出外のデータである最終行が入ってきてしまいます。
よく見ると、最終行のデータは、行番号は黒文字であるため抽出によって表示されたのではなく、範囲からはずれていることがわかります。
そもそもSUBTOTAL関数は、オートフィルタで抽出データの集計を行うことができるようになっており便利に利用できるのですが、それが仇となって不具合を起こすようです。