average(if(...
配列を使用してetcを使用する方法はわかっていますが、これに他の条件を含める方法がわかりません
これまでに得たものは次のとおりです。
=AVERAGEIFS(Avg_Range,Date,">=1/04/14",Date,"<01/05/14",Status, {"D","E","F","G","H","I","R"})
(日付が 4 月で、ステータス コードが d または e または f または g または i または r の場合)
「ステータス、{"D"、"E"、"F"、"G"、"H"、"I"、"R"}」部分を機能させるには、何をする必要がありますか?
ありがとう
答え1
問題は、AVERAGEIFS
配列引数を持つ数式が値の配列を返していることです。その値の一部は でありDIV/0
、その他は単一の値であったり、複数の値の平均を表したりします (同じステータスの個別の値がある場合)。
目的を達成するには、次の式が機能する必要があります。
=SUMPRODUCT((Date>=DATE(2015,4,1))*(Date<DATE(2015,5,1))*(Status={"D","E","F","G","H","I","R"})*Avg_Range)/
SUMPRODUCT((Date>=DATE(2015,4,1))*(Date<DATE(2015,5,1))*(Status={"D","E","F","G","H","I","R"}))
最初の部分では関連するエントリを合計し、2 番目の部分ではそれらをカウントして割ります。