「StiLL」Excel情報190  フィルタ--Excelのバージョンによりフィルタの結果が異なる
■これまで「フィルタオプションの設定」を使用したフィルタの例をご紹介してきましたが、ご活用されていますか?実はExcelのバージョンによってフィルタの結果が違うことがあるのはご存知でしょうか?今回はその対処方法をご紹介します。 ☆対応方法:異なるバージョンでも結果を同じにするには、「=」等の符号や、「?」「*」を使用して検索条件を作成します。 ※ご参考までに。データベース関数(DCOUNTA, DSUM 等)でも、同様の現象が発生します。Excel2002 でフィルタやデータベース関数をご使用している場合はご注意ください。
「フィルタオプションの設定」に関してのバックナンバーはこちらからご覧ください。
【バックナンバー 034】 データ--フィルタオプションの設定
【バックナンバー 095】 データ--フィルタオプションに設定する検索条件の例
【バックナンバー 155】 フィルタ--「フィルタオプションの設定」で複合検索
■Excelのバージョンによるフィルタ結果の違い
まず、フィルタの結果が Excel のバージョンによってどのように違うのかをご紹介します。
今回使用したデータ フィルタの検索条件
上のデータと検索条件を使用して、各バージョンでのフィルタの結果を見てみましょう。
Excel97 での結果 Excel2000 での結果
Excel2002 での結果 Excel2003 での結果
どうですか?Excel2002 だけ、結果が違いますね。
これは、Excel2002 以外 では、「名称が V から始まるもの」 を検索しているのに対し、
Excel2002 では、「名称が V のもの」 という検索が行われているためです。
■Excelのバージョンが異なってもフィルタの結果を同じにするには
このように、バージョンによって結果が異ならないようにするには、「検索条件」に
「*」や「?」などの正規表現を使用してあげる必要があります。
? : 任意の1文字を表します。    
* : 任意の文字列(1文字以上)を表します。
今回は、「名称が V から始まるもの」 を検索しますので、「検索条件」を変更します。
この「検索条件」で検索を行いますと、全てのバージョンの結果が同じになります。
■データベース関数にもご注意を!
「データベース関数」も、フィルタと同じ検索方法が行われています。
Excel2002 での結果が異ならないよう、検索条件の指定方法にご注意ください。
「データベース関数」には下記のものがあります。
DAVERAGE DCOUNT   DCOUNTA
DGET   DMAX   DMIN  
DPRODUCT DSTDEV   DSTDEVP
DSUM   DVAR   DVARP  
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます