Sub Deciles()
Dim ar, arr
Dim i As Long, j As Long, k As Long, jj As Long
Dim dv As Long, nv As Long, rv As Long
Application.ScreenUpdating = False
With Sheets("input")
ar = .[a2].CurrentRegion
End With
ReDim arr(1 To UBound(ar, 1), 1 To 10)
For i = 1 To UBound(ar, 1)
rv = ar(i, 1) Mod 10
dv = Int(ar(i, 1) / 10)
jj = 1
For j = 1 To 10
If j <= rv Then nv = dv + 1 Else nv = dv
DSum = 0
For k = 1 To nv
jj = jj + 1
DSum = DSum + ar(i, jj)
Next k
arr(i, j) = DSum / nv
Next j
Next i
Sheets("Output").Range("B2").Resize(UBound(arr, 1), UBound(arr, 2)) = arr
Application.ScreenUpdating = False
End Sub
I had to "clear contents" on data INPUTt to get correct column count (column A of INPUT)
Bookmarks