[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『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.