- ベストアンサー
エクセル数式で作った表に関して
課題の資料にデータを整理しています。 素人の為、以前もこちらで助けていただいたのですが、また行き詰ってしまったので、助けていただきたいです。 よろしくお願いします。 例えば、sheet1に下の様なデータを入力し、 A列 B列 C列 D列 1 1日 3 2 5 2 2日 5 3 4 3 3日 4 1 2 4 4日 2 7 6 5 5日 8 4 7 6 6日 9 5 3 7 7日 7 6 1 ・ ・ A1~D5までの列の平均、最大値、と最大値に対するA列の日付をsheet2に下の様に表示したいです。 A列 B列 C列 1 B列の平均 C列の平均 D列の平均 2 B列の最大値 C列の最大値 D列の最大値 3 B列の最大値に対応するA列 C列の最大値に対応するA列 D列の最大値に対応するA列 ここまでは出来たのですが、その下に、A6~D10、A11~D15と表を続けていきたいのですが、 Sheet2のA1~C3を選択し、カーソルを右下に沿わせ+をクリックして下にドラッグしても、続きのセルには 対応せず、うまくいきません。 説明が下手でわかりづらいかと思いますが、 Sheet1で入力したデータを、5行ずつsheet2で数式の表にしたいということです。 よくあるデータ整理の仕方だと思うのですが、初心者のため、上手くいきません。 どなたか助けていただけたら幸いです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Sheet2のどこ(なんてセル)にA6~D10のデータを表示するのかが問題。 たとえば、Sheet2のA4セルに入れるなら、参照するSheet1のセルの指定が狂ってる。そんなに数がないなら手でセル参照を修正すればいいと思うけど。 そうでなければ、最初A1~D5までのセル参照をいじる必要がある。 他に簡単な方法は、Sheet2のA6にコピーすればできるはず。(空白ができるけど、それは後でつぶせばいいと思う。)
その他の回答 (1)
- ham_kamo
- ベストアンサー率55% (659/1197)
自分もExcel勉強中なので、課題と思って作ってみました。 ちょっとややこしくなりましたが、以下のようになりました。 A1: =AVERAGE(OFFSET(Sheet1!$B$1,FLOOR(ROW()-1,3)/3*5,COLUMN()-1,5,1)) A2: =MAX(OFFSET(Sheet1!$B$1,FLOOR(ROW()-1,3)/3*5,COLUMN()-1,5,1)) A3: =INDEX((OFFSET(Sheet1!$A$1,FLOOR(ROW()-1,3)/3*5,0,5,1)),MATCH(A2,OFFSET(Sheet1!$B$1,FLOOR(ROW()-1,3)/3*5,COLUMN()-1,5,1),0)) これを縦横にドラッグしてください。 もっと詳しい人が作れば、もっとシンプルになるかもしれませんが、とりあえず。
お礼
お礼大変遅くなりました!例にくださった数式が難しすぎて、自分のデータに応用できませんでした。ham_kamoさんを見習って、もっと勉強したいと思います。ありがとうございました。
お礼
なんとか解決できました。例にあげてくださった数式を理解するにも足らない状態なので、もっと勉強したいと思います。(課題が終わってかから)ありがとうございました!
補足
回答ありがとうございます!おっしゃる通り、A4セルから下に表をつなげていきたいのですが、 A6にコピーで出来ました!(空白は削除) しかし、量が若干あるのと、勉強したいので、もしよろしければ、数式の訂正箇所を教えていただけますでしょうか? 現在は、sheet2に、 A列 1 =AVERAGE(Sheet1!B1:B5) 2 =MAX(Sheet1!B1:B5) 3 =INDEX(Sheet1!A1:A5,MATCH(MAX(Sheet1!B1:B5),Sheet1!B1:B5,0)) と数式を入れていますが、右下+をドラッグではA6セルからの指定になりません。 何か数式が欠けているのでしょうか?