
'
Option Explicit
'
Sub abc()
 Dim a, i, j, m, n, t, pos, sum, scope
 a = Range("a3:a" & [a3].End(xlDown).Row).Value
 sum = [i3].Value
 ReDim pos(1 To 5, 1 To 4)
 For i = 1 To 5
  pos(i, 4) = UBound(a) \ 5
 Next
 For i = 1 To UBound(a) Mod 5
  pos(i, 4) = pos(i, 4) + 1
 Next
 pos(1, 1) = 1: pos(1, 2) = pos(1, 4): pos(1, 3) = sum / 5
 For i = 2 To 5
  pos(i, 1) = pos(i - 1, 2) + 1
  pos(i, 2) = pos(i, 1) + pos(i, 4) - 1
  pos(i, 3) = sum / 5
 Next
 scope = Split([l3].Value, "-")
 ReDim b(1 To UBound(a), 1 To 2)
 For i = 1 To 5
  t = pos(i, 3)
  For j = pos(i, 1) To pos(i, 2) - 1
   n = Round(Rnd * (scope(1) - scope(0)) + scope(0), 2)
   b(j, 1) = n
   t = t - n
  Next
  If t >= Val(scope(0)) And t <= Val(scope(1)) Then
   b(j, 1) = t: b(pos(i, 1), 2) = pos(i, 3)
  Else
   i = i - 1
  End If
  DoEvents
 Next
 [m3].Resize(UBound(b), 2) = b
End Sub