- 締切済み
excel関数教えてください
横1行で、以下のような条件でデータが入っています。 AV・AZ・BD・BH・BL・BP 空白または文字列 AW・BA・BE・BI・BM・BQ 空白または文字列または数値 AX・BB・BF・BJ・BN・BR 空白または0~4の整数値 AY・BC・BG・BK・BO 空白または数値 BS 数式 基本的に最初の列が空白の場合は、4列セットで空白が続きますが、 BS列のみ全ての行に数式が入っています。 これで、BT・BUに、 ・AX・BB・BF・BJ・BN・BRが4の場合のAY・BC・BG・BK・BO・BSの平均 ・AX・BB・BF・BJ・BN・BRが0~3の場合のAY・BC・BG・BK・BO・BSの平均 を出したいです。 =SUMPRODUCT((MOD(COLUMN(AY10:BS10),4)=3)*(AX10:BR10<=3)*(AY10:BS10))/SUMPRODUCT((MOD(COLUMN(AY10:BS10),4)=3)*(AX10:BR10<=3)) こんな関数を入れてみましたが、 空白の場合もカウントしてしまうので0~3の場合の平均がおかしくなったり、 AW・BA・BE・BI・BM・BQに文字列が入った場合にエラーが出たりします。 解決する関数を教えてください。 よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- mt2008
- ベストアンサー率52% (885/1701)
やや強引ですがこんな感じでどうでしょう? ・AX・BB・BF・BJ・BN・BRが4の場合のAY・BC・BG・BK・BO・BSの平均 =AVERAGE(IF(AX10=4,AY10,$A$1),IF(BB10=4,BC10,$A$1),IF(BF10=4,BG10,$A$1),IF(BJ10=4,BK10,$A$1),IF(BN10=4,BO10,$A$1),IF(BR10=4,BS10,$A$1)) ・AX・BB・BF・BJ・BN・BRが0~3の場合のAY・BC・BG・BK・BO・BSの平均 =AVERAGE(IF(AX10<=3,AY10,$A$1),IF(BB10<=3,BC10,$A$1),IF(BF10<=3,BG10,$A$1),IF(BJ10<=3,BK10,$A$1),IF(BN10<=3,BO10,$A$1),IF(BR10<=3,BS10,$A$1)) A1を空白セルとして使って居ます。A1以外を使う場合は変更してください。 なお、このままだと、全てが空白だったような場合エラー(#DIV/0!)になりますので、それぞれを空いている列(例:CA10、CB10)に入れて、BT10、BU10には次の様に入れます。 BT10 =IF(ISERR(CA10),"",CA10) BU10 =IF(ISERR(CB10),"",CB10) 無理やり一行にまとめるのも可能ですが、見づらくなるのでやめました。