データの整理をしているのですが、エクセルが初心者同様に苦手なもので知恵をお借りしたいです。
例えばシート1でA1~1000までのセルにデータが入っていたとして、A1~100、A101~200、A201~300・・・と、各列100個ずつ平均を出していきたいのですが、一回一回100個ずつのセルを選んでいくしかないのでしょうか?
平均はシート2に出したいと考えています。
データの量が膨大でして、実際にはA10~2800→DL10~2800までびっしり入っているので、データを100個ずつに横に並び替えるとかはできそうにありません。。。
一回法則を作ってドラッグでバーっとやる方法があれば是非教えていただきたいのですが。。
分かりにくい質問の仕方で申し訳ありません。意味不明でしたら聞いていただけると助かります。
A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
初心者ということなので、よくわからないかも知れませんが、
配列数式という仕組みを使うと簡単にできます
A1:A20に
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
4
4
4
4
4
とします。わざと簡単にしてあります。
希望はSheet2らしいが簡単のためSheet1の、どこでも良い空き列に(いまG列とする)
=AVERAGE(IF(INT((ROW(A$1:A$100)-1)/5)=ROW()-1,A$1:A$100,""))
と入れて、SHIFT+CTRL+ENTERの3つのキーを同時押しする。
これをG4まで式を複写する(+ハンドルを引っ張る。
G1:G4に
1
2
3
4
が出ます。
質問例の100ごとの場合は5->100に変え、A$1:A$100をA$1:A$2000に変える。10から始まるときは
A$1:A$100)-1をA$1:A$100)-10に、ROW()-1をROW()-10に変えてください。
上記式の意味は、行の番号-1を100で割って、0(すなわち1-100)の時は
その行の数字を対象にし、それ以外は除外して(””)、平均を計算しろということです。0はG列第1行のケース、第2行は行番号2-1=1は、101:200-1を100で割った行を対象にするように、ずれて行きます。
No.5
- 回答日時:
#2回答者です。
「マクロ」について誤解があるようです。
マクロの登録には、以下のような方法があります。
(1)一連の作業を登録
(a)「ツール」→「マクロ」→「新しいマクロの記録」
(b)マクロ名を必要により変更し、OK
(c)一連の操作を行う
→一連の作業を、一度、行う必要があります
(d)「ツール」→「マクロ」→「記録終了」
(2)(1)で登録した内容を元に、マクロを修正(VBAで記述)
(3)一からVBAで作成
一連の作業の内、一部分を行い、それ以降も行えるようにするには、VBAという言語でプログラミングしなければなりません。
式を一行だけ入力し、コピー&ペーストするだけで自動的に100行ずつ計算できる式は、#1、#4回答者さんの回答で行えます。
何も考えず、式をそのままコピーしてみてください。
↓この式を、何も考えずSheet2に貼り付けてみてください。Sheet1の部分が、シート名です。
=AVERAGE(OFFSET(INDIRECT("Sheet1!A"&((ROW(A1)-1)*100+1)),0,0,100,1))
No.4
- 回答日時:
=AVERAGE(OFFSET(INDIRECT("シート1!A"&((COLUMN(A1)-1)*100+1)),0,0,100,1))
で横にドラッグでコピー
縦方向ならCOLUMN関数の代わりにROW関数を使用してください。
縦横に各列を100行単位で平均なら
=AVERAGE(OFFSET(INDIRECT(ADDRESS((ROW(A1)-1)*100+1,COLUMN(A1),,,"シート1")),0,0,100,1))
No.3
- 回答日時:
=AVERAGE(OFFSET($A$1,100*(ROW()-1),0,100,1))
みたいな感じでやればいいです。
=AVERAGE(OFFSET(基準の位置,相対的な範囲の始まり縦位置,相対的な範囲の横位置,縦範囲サイズ,横範囲サイズ))
No.2
- 回答日時:
>シート1でA1~1000までのセルにデータが入っていたとして、A1~100、A101~200、A201~300・・・と、各列100個ずつ平均を出していきたい
>平均はシート2に出したい
シート2の平均値を入れたいセルに、以下のような式を入れればOKです。
●A1~A100の平均
=AVERAGE(Sheet1!A1:A100)
●A101~A200の平均
=AVERAGE(Sheet1!A101:A200)
>データを100個ずつに横に並び替えるとかはできそうにありません
何のために、そういう作業が必要なのでしょうか?
>一回法則を作ってドラッグでバーっとやる方法があれば是非教えていただきたいのですが
手順が決まった作業なら、一連の作業を「マクロ登録」することで、自動化は可能です。
この回答への補足
補足なのですが、A1~A100の平均、A101~A200の平均を自分でだしたあと、この二つを選択した状態から下にドラッグしてもA201~A300ではなくA102~A201の平均が求まってしまうのです。
なので、よろしければ100ずつの平均にできるようなマクロ登録(?を教えて頂きたいのです。
無知でもうしわけありません、よろしくお願いします。
解答ありがとうございます!
chukenkenkouさんのやりかたが一番自分なりに解釈できそうなのですが、マクロ登録というのが良く分かりません。
「100個のセルずつ平均するのを繰り返す」とかっていう登録ができるということですよね?
その登録方法というのは難しいのでしょうか?
よろしければ教えていただきたいのですが。
No.1
- 回答日時:
例えば、以下の方法で如何でしょうか。
シート2の任意列1行目に=AVERAGE(INDIRECT("sheet1!a"&(ROW()-ROW(Sheet1!$A$1))*100+1):INDIRECT("sheet1!a"&ROW()*100))として下方向にコピーして下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) エクセルで串刺ししたシートの並べ替えをしたいです 4 2023/02/14 11:59
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- Excel(エクセル) エクセル表作成について 5 2023/03/12 13:25
- Excel(エクセル) Excelで縦1列に並んだ大量の数字から、一定間隔で平均値を出したい。 2 2023/02/20 09:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【関数】スペースがいくつ入っ...
-
西暦や和暦の表示をyyyymmdd表...
-
Excelのセルを飛ばして入力する
-
Excelのオートフィル
-
別シートからの文字を変更
-
Excel 2019 のピボットテーブル...
-
エクセルの行の抽出について質...
-
【マクロ】エクセルにかいてあ...
-
スプレッドシート クエリ関数 1...
-
エクセルでセルに「氏名を入力...
-
MOS365 Excel Expert / Excel R...
-
excelの不要な行の削除ができな...
-
EXACT関数とIF関数の組み合わせ...
-
スプレッドシートの関数VLOOKUP...
-
Excelで全角を半角にしたいので...
-
Excel初心者です。 詳しい方、...
-
エクセルの数式で教えてください。
-
4つのパターンを表示するEXACT...
-
スマートな関数を教えて下さい。
-
【Excel】セル内の時間帯が特定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報