[[20060121223028]] 『AVERAGE関数の計算方法』(PAO) ページの最後に飛ぶ

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

 

『AVERAGE関数の計算方法』(PAO)

 Sheet1とSheet2があります。

 Sheet1のP2セルには、P6セル〜Pnセルまで数値が記載されておりそのAVERAGEを表示しています。
   P2=AVERAGE(P6:P65536)
   ※n+1行以降のセルの数値は0として計算しないようn列までの平均値を表示している

 Sheet1のP列のセルは行を下に向かって毎日数値を記入して行きます。

 そこで、Sheet2のA8セルに、その日のP2セルより小さい数値Tを手動で入力します。
 その日のSheet1のP行の最下行セルがPnだった場合、n+1以降のP列に毎日数値Tが
 記入されたと仮定すると、x日後のP(n+x)セルで、
  条件式 P2=AVERAGE(P6:Pn+x)<T*1.01
  となるxを求めたいと考えています。

 <Sheet1>  P列
 2行    50000  ←P6以降のAVERAGEを表示

 6行       78890
  ・
  ・
 n行    45530
 n+1行     30000  ←T=30000とした場合
 n+2行     30000
  ・
  ・
 n+x行     30000

 つまり、条件は
  P2=AVERAGE(P6:Pn+x)=AVERAGE(P6:Pn,T,T,T・・・,T{x個})<T*1.01(Tの1%高未満になる日)

 このxを導き出す関数をSheet2のA8セルに入力しておき、A7セルに数値を
 記入したと同時に、xを求めたいのですが、Sheet2のA8セルにはどのような
 式を入力すればよいのでしょうか?

 どうぞよろしくお願い致します。

 シート1 P6〜P65536 と、シート2 A7の値をA8の値個分 とを合わせた平均は
 (SUM(Sheet1!P6:Sheet1!P65536)+    A7*A8    )/(COUNT(Sheet1!P6:Sheet1!P65536)+     A8      )
 (     シート1の合計          +シート2の合計)/(        シート1の件数         +シート2の件数)
 これが、A7*1.01 より小さくなるA8を求めればいいので
 (SUM(Sheet1!P6:Sheet1!P65536)+A7*A8 )/(COUNT(Sheet1!P6:Sheet1!P65536)+A8)<A7*1.01
 を解くと
 A8>-101*COUNT(Sheet1!P6:Sheet1!P65536)+100*SUM(Sheet1!P6:Sheet1!P65536)/A7
 です。
 左辺の値を右辺より小さくするために、小数以下があるときは切り上げを 無いときは+1をしています。
 A8=IF(TRUNC(-101*COUNT(Sheet1!P6:Sheet1!P65536)+100*SUM(Sheet1!P6:Sheet1!P65536)/A7)=-101*COUNT(Sheet1!P6:Sheet1!P65536)+100*SUM(Sheet1!P6:Sheet1!P65536)/A7,-101*COUNT(Sheet1!P6:Sheet1!P65536)+100*SUM(Sheet1!P6:Sheet1!P65536)/A7+1,ROUNDUP(-101*COUNT(Sheet1!P6:Sheet1!P65536)+100*SUM(Sheet1!P6:Sheet1!P65536)/A7,0)

 ・・・・あっていますか?

 (HANA)


 HANAさん凄いです!
 ちゃんと回答が表示されました。
 これからじっくりと結果を確認させて頂き、
 上記式を勉強させて頂こうと思います。
 本当にありがとう御座いました。(PAO)

コメント返信:

[ 一覧(最新更新順) ]


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