• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAで表の平均値を出す。)

エクセルVBAで表の平均値を出す

このQ&Aのポイント
  • エクセルVBAを使用して表の平均値を求める方法を教えてください。
  • 計算するセル範囲は(C5-C6),(C4-C5),(C3-C4),(C2-C3)と(D5-D6),(D4-D5),(D3-D4),(D2-D3)です。
  • 途中に空白列がある場合でも、列IVまで計算する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

> (C5-C6),(C4-C5),(C3-C4),(C2-C3)の平均値 って、(C2-C6)/4と言う意味でよろしいですか?(例の場合、(7-3)/4=1 ) その程度ならVBAでは無く演算式で、Sheet1のC2に↓を入れて右方向にコピーしては? =IF(Sheet2!C2="","",(Sheet2!C2-Sheet2!C6)/4) 私が何か勘違いしているような気もしますが……。

kei__2000
質問者

お礼

 回答ありがとうございます。回答内容を読み、なんと馬鹿な質問をしてしまったのかと自分の軽率さを恥ずかしく思います。

その他の回答 (3)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんにちは! 6行目以下にデータがあっても関係なく2行目~6行目で操作すればよいわけですよね? 一応そういうことだとして・・・ 尚、空白セルは「0」とみなしてしまいますが、 ごく簡単な一例です。 ↓のコードを標準モジュールにコピー&ペーストしてマクロを実行してみてください。 Sub test() 'この行から Dim i, j As Long Dim Val1, Val2 As Variant Dim ws1, ws2 As Worksheet Set ws1 = Worksheets("sheet1") Set ws2 = Worksheets("sheet2") For i = 3 To 256 For j = 2 To 5 Val1 = ws1.Cells(j, i) - ws1.Cells(j + 1, i) Val2 = Val2 + Val1 Next j ws2.Cells(3, i) = Val2 / 4 Val2 = 0 Next i End Sub 'この行まで 外していたらごめんなさいね。m(__)m

kei__2000
質問者

お礼

 回答ありがとうございます。いい勉強をさせていただきました。ありがとうございます。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

> (C5-C6),(C4-C5),(C3-C4),(C2-C3)の平均値 C5からC6を引いたもの+C4からC5を引いたもの+C3からC4を引いたもの+C2からC3を引いたものを4で割るってことですか? では一例です。 途中に空白があるとのことですが、特に指定が無いので空白は0とみなしました。 Sub test01()   Dim myV, myW   Dim i As Long, n As Long, j As Long   myV = Sheets("Sheet2").Range("C2:IV6").Value   ReDim myW(1 To UBound(myV, 2))   For j = 1 To UBound(myV, 2)     n = 0     For i = 1 To UBound(myV) - 1       n = n + 1       myW(j) = myW(j) + myV(i, j) - myV(i + 1, j)     Next i     myW(j) = myW(j) / n   Next j   Sheets("Sheet1").Range("C2").Resize(, UBound(myV, 2)) = myW End Sub

kei__2000
質問者

お礼

 回答ありがとうございます。いい勉強になりました。ありがとうございます。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

単純に、2行目から6行目までのセルで、上から4組の差の平均値を求めたいなら、マクロを使うより以下のような関数で求めるほうが簡単です。 =AVERAGE(INDEX(Sheet1!C2:C5-Sheet1!C3:C6,))

kei__2000
質問者

お礼

 回答ありがとうございます。参考にさせていただきたいと思います。

関連するQ&A