• 締切済み

VBAのコードに関してです。

データ数のリサンプリングのコードを教えてください。 M2から不特定のデータが不特定の列まで入っている状態です。各列に200程数値データが入力されてます。この数値データを上から順に2つの平均をとってデータ数をリサンプリングしたいと思っています。 どのようにコードをくめばいいのでしょうか? M2とM3の平均をM2に出力、M4とM5の平均をM3に出力というようにリサンプリングを行いたいです。 分かりづらかったらすいません。

みんなの回答

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

基本的にはループを回して処理する事になります。 データを書き換えてしまうと確認もできないので、Sheet2に結果を出力させました。 Sub Sample()   With Worksheets("Sheet1")     For i = 13 To .Range("M2").End(xlToRight).Column       nRow = 2       For j = 2 To .Cells(2, i).End(xlDown).Row Step 2         Sheets("Sheet2").Cells(1 + j / 2, i) = WorksheetFunction.Average(.Range(.Cells(j, i), .Cells(j + 1, i)))       Next j     Next i   End With End Sub