No.2ベストアンサー
- 回答日時:
こんにちは
ANo1様と同じ内容ですが、式は
=AVERAGE(B7:B1000)
でも良いと思います。
右へフィルコピーするのも同様です。
一方で、タイトルが
>マクロ教えてください。
となっているので、マクロから設定するのであれば、B6セルを例として…
Range("B6").FormulaR1C1 = "=AVERAGE(R[1]C:R[994]C)"
で、同様のことができます。
式をR1C1形式で表現していますが、この形式だと対象列によって式の内容を変える必要がないからです。
B6~L6までをそのまま繰り返せば設定できます。
(もちろん、A1形式を用いて設定することも可能です)
マクロで設定する場合は、計算対象行の範囲が既知でしょうから、それに合わせた式にしておく方がよろしいと思います。(上の例の994のところ。994は1000行を意味しています)
他の方法としては、上記の式の計算もマクロで行ってしまい、結果を直接代入するという方法も考えられます。
各列を順に加算して求める通常の方法でも良いですし、シート関数を利用して
Range("B6").Value = WorksheetFunction.Average(Range("B7:B1000"))
のようにすることでも結果の値を記入できます。
No.3
- 回答日時:
こんばんは!
すでに回答が出ているとおり、AVERAGE関数でこれ以上のデータはない!
という位まで範囲指定しておけば大丈夫だと思うのですが・・・
どうしてもVBAで!というコトであれば一例です。
A列で最終行を取得するようにしています。
Sub 平均()
Dim j As Long, lastRow As Long
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
If lastRow > 6 Then
For j = 2 To Cells(5, Columns.Count).End(xlToLeft).Column
Cells(6, j) = WorksheetFunction.Average(Range(Cells(7, j), Cells(lastRow, j)))
Next j
End If
End Sub
こんな感じではどうでしょうか?m(_ _)m
No.1
- 回答日時:
B6のセルに以下の式を入れて、B6をコピーしてC6~L6に貼り付けます。
「=SUM(B7:B1000)/COUNTA(B7:B1000)」
7行目以降を合計し、空白以外の行数で割る計算です^^
※1000行は余裕をもった行数にしています。もっと必要であれば増やしてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- Excel(エクセル) エクセルの表でダブりを解消する方法を、教えてください。 5 2023/04/12 12:11
- Excel(エクセル) 別シートに毎回異なるデータをコピーする 7 2022/06/24 09:02
- Excel(エクセル) エクセル VBAでセル内容を別の列の最下行に転記したい 2 2022/11/29 08:47
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Visual Basic(VBA) エクセルVBAで『A列』に新規で数値を入力し『B列』から右方向の空白セルにその値を貼り付ける方法 4 2022/11/05 08:37
- Excel(エクセル) Excel教えてください。 下記のことが出来るのは、マクロですか?条件付き書式でしょうか、、?知恵を 5 2022/11/12 09:33
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBA Unionはなぜ遅い?
-
エクセルの関数SUBSTITUTEを、...
-
エクセルで同じ名前ごとの合計...
-
エクセル 指定した文字列を含...
-
エクセルで列内の同じIDの商品...
-
エクセルで2列を検索し2列とも...
-
Excelで自動的に並べ替えなんて...
-
エクセル マクロで列を連続し...
-
エクセル 並び替え
-
Excelで数値→文字列変換で指数...
-
テキストボックス内の文字のふ...
-
エクセル
-
エクセルでグラフタイトルが折...
-
エクセルにおける、グラフの指...
-
塗りつぶしの色をコピーするには
-
Excelで行ごとコピー、同じ行を...
-
Excelの関数について、特定の文...
-
数字がセルの左側に寄っていて...
-
エクセルグラフの一括設定。
-
PDFの一部を切り取って別のシー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル 指定した文字列を含...
-
エクセルで同じ名前ごとの合計...
-
エクセルVBA Unionはなぜ遅い?
-
エクセルの関数SUBSTITUTEを、...
-
桁数が混在する並び替えの方法
-
エクセルで一部除外した数字を...
-
EXCEL VBA 指定範囲内で特定の...
-
エクセルで列内の同じIDの商品...
-
エクセルで2列を検索し2列とも...
-
EXCEL 指定した曜日に番号を振...
-
エクセル マクロで列を連続し...
-
EXCELである列を上から順にチェ...
-
Excelで自動的に並べ替えなんて...
-
エクセルvba 一つ上の行を指定...
-
エクセル VLOOKUPが反映されない
-
エクセルマクロでA欄に値があ...
-
(続き)Excel2013で正しくソート...
-
ExcelVBA:列方向の並び替え O...
-
エクセルのマクロ教えてください。
-
エクセル 並び替え
おすすめ情報