• ベストアンサー

オートフィルタで抽出したデータの平均の求め方

発注から出庫までのデータを書き出した表で、オートフィルタ抽出をかけて、その結果のみの平均値をだしたいのですがどうしてもうまくいきません。こういう場合はどうするのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • Hageoyadi
  • ベストアンサー率40% (3145/7860)
回答No.2

解除したらSUBTOTALの解も変わっちゃうのは仕方ありません。 DAVERAGE(データベースを構成するセル範囲,関数の中で使用する列,指定した条件が設定されているセル範囲)ならオートフィルタを解除しても、というかオートフィルタ機能とはまったく関係なく動作します。 分かりづらいのは「関数の中で・・・」ですが、これは半角の二重引用符 (") で囲んだ "樹齢" や "歩どまり" などのような文字列、またはリストでの列の位置を示す番号、たとえば、先頭の列を示す場合は 1、2 番目の列を示す場合は 2 を指定します。 また、「条件設定のセル範囲」は列見出しと検索条件を指定するセルが少なくとも 1 つずつ含まれている場合は、任意のセル範囲を指定することができます。

その他の回答 (3)

回答No.4

こんにちは! 結果としては、マクロを作成すること事がベストではないでしょうか。 どの様な利用目的で、平均値を出すのか判りませんが、次の方法で代用できればお試し下さい。 セルの範囲指定→「データ」→「集計」→「平均を選択」 頑張って下さい!

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.3

> オートフィルタの抽出結果を解除してしまうと、平均値の結果が変わってしまいました そりゃあ、そうです。抽出結果の平均値を求めているのですから。 それが気に入らないなら、値をコピーしておくしかないですね。 後は、きっちりとしたマクロを書くか。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

SUBTOTAL ワークシート関数を使います。平均値の場合には、以下のようになります。 =SUBTOTAL(1, B2:B100) 範囲は、フィルタにかけている全体になります。

roji
質問者

お礼

ご回答ありがとうございます。 早速試してみましたが、オートフィルタの抽出結果を解除してしまうと、平均値の結果が変わってしまいました。 これはどうすればいいのでしょうか?

関連するQ&A