[[20120321165858]] 『AVERAGE関数とINDEX関数』(元祖Q) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『AVERAGE関数とINDEX関数』(元祖Q)

 いつもお世話になっております。
 普段使用している関数なのですが、これより良い関数があればと思い質問いたします。

 	(A列)	(B列)	(C列)
 1			7.6←「=AVERAGE(INDEX(C3:C500,))」が入ってます
 2	受注日	出荷日	日数
 3	10/1	10/5	4
 4	10/1	10/7	6
 5	10/3	10/11	8
 6	10/5	10/20	15
 7	10/10	10/15	5

 C3から下には受注日から出荷日まで計算した数式が入っています。
 C1には日数の平均が入っています。
 受注が入るごとに行が増えます。
 当月分が終わると、3行目から下を全部削除して翌月分を同じように使用しています。

 C3セル =AVERAGE(INDEX(C3:C500,))
 AVERAGE関数だけですと、行を削除した時に「#REF!」となってしまうので、
 これが回避できるのは良いのですが、

 改善できればなあと思う箇所
 実際に500行も使用しないのですが、万が一、数が多くなった場合を考えC500としています
 これが何か無駄なような気がします。

 例えば10行削除した場合、数式が
 「C500」⇒「C490」と変わり
 削除後、「C490」⇒「C500」に手動で変更しています。
 これも何か手間なような気がしてしまいます。

 良いお知恵がありましたら拝借いたしと存じます。
 よろしくお願いいたします。


 =AVERAGE(INDIRECT("C3:C500"))
 で、どうかな?

 INDIRECTで、文字列の"C3:C500"をセル範囲に変換してるよ。
 で、"C3:C500"は文字列なんで行を削除しても変化しないよ。

 追記
 =AVERAGE(C3:C500)
 で、行削除して「#REF!」なる時は
 =AVERAGE(INDEX(C3:C500,))
 でも「#REF!」になると思うけど。
 (春日野馨)

 > 当月分が終わると、3行目から下を全部削除して翌月分を同じように使用しています。

 値だけクリアでいいと思うんですが、なぜ行ごと削除するんですか?
 
 (JPN)


 春日野馨さん
 INDIRECT関数 うまくいきました ありがとうございました。
 INDEX関数を使うならINDIRECT関数を思いつかなきゃだめですね 私

 JPNさん
 D列より後ろにいろいろと商品名や条件付き書式やらとがあるので、削除してしまったほうが楽なのです。

(元祖Q)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.