1列のデータからExcelの中央値の間隔を取得する?


0

Excelの 'A'列にはかなり多くの行のデータがあります。

私がやりたいことは8つの答えの間隔で中央値を得ることです( =MEDIAN(A1:A8)その後、次の8つの答えの中央値 =MEDIAN(A9:A16 等々)。手動で式を変更せずにこれを行うにはどうすればよいですか?

アドバイスは大歓迎です! :)


すべての中央値を同じセルに入れますか?どこに出力しますか?どのバージョンのExcelを使用していますか?あなたはマクロに精通していますか?
Raystafarian

お返事をありがとうございます。出力を列Bの中央値として出力することを検討しています(最終的には、列Bの中央値は列Aのセル数の1/8になります)。私はExcel03を使用していますが、他のバージョンにアクセスすることができます。私は以前マクロを使ったことがありますが、私はマクロにあまり馴染みがありません。
user1205197

ああ、そうシリーズではなく、一連の式
Raystafarian

式を下にドラッグして不要な式を削除するだけで、列bにドラッグすると式が変わります。
Raystafarian

ありがとう、それは私が考えていなかった賢い考えですが、それでも無関係なものを削除するのはかなりの努力ではないでしょうか。
user1205197

回答:


2

2つの可能なアプローチ

1.数式をテキスト値として作成してから、実際の数式に変換します。この式をB1に入れて、必要なところまでコピーします。

="=MEDIAN(A"&ROWS(B$1:B1)*8-7&":A"&ROWS(B$1:B1)*8&")"

今これを行うことによってテキストに変換します

列Bをコピーして右クリックし、[形式を選択して貼り付け]>を使用します。値> OK

これを実行して式に変換します。

列Bを選択して[データ]>を使用します。列へのテキスト>終了

2.コピーしたB1のこの式を使用

=MEDIAN(OFFSET(A$1,ROWS(B$1:B1)*8-8,0,8))

最初の方法はもう少し複雑ですが、あなたは望んだ正確なMEDIAN式を得ます。 2番目のアプローチはより単純で正しい結果をもたらしますが、公式を見て明らかになりません。


バリーは素晴らしい答えです。あなたの答えは+1です。
Siva Charan

1

あなたは(B1で)次の公式を使って記入することができます:

=MEDIAN(INDIRECT("A"&(ROW()-1)*8+1&":A"&ROW()*8))

0

以下の式は最も長い表現方法です: -

= IF(ISERROR(MEDIAN(INDIRECT( "A"& IF(ROW(A1)= 1、ROW(A1)、ROW(A1)+(7 *(ROW(A1)-1)))))):INDIRECT( "A"とIF(行(A8)= 8、行(A8)、行(A8)+(7 *(行(A1)-1))))))、 "該当なし"、MEDIAN(INDIRECT( "A"&IF(ROW(A1)= 1、ROW(A1)、ROW(A1)+(7 *(ROW(A1)-1)))):INDIRECT( "A"& IF(ROW( A8)= 8、ROW(A8)、ROW(A8)+(7 *(ROW(A1)-1))))))

幸運にも バリー 最短表現を得た。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.