[vba]Код
'Всё это в модуль поместить надо.
Dim stoper As Integer
Public Sub Rnd_min_max()
Dim maxVal As Double
maxVal = 10000000000#: [a2].value = 0: [b2].value = 0: stoper = 0
t = Timer
Do While stoper = 0
'запускает генератор в ячейке [b1]
'если не нужен просто занопь строчку ниже
Randomize: myVal = CDbl(Int((maxVal * Rnd()) + 1)): [b1] = myVal
'--------------------------------
'--тут читаем ячейку [b1] и сортируем-----------------
If [b1].value < [a2].value Or [a2].value = 0 Then [a2].value = [b1].value 'минимумы в [a2]
If [b1].value > [b2].value Then [b2].value = [b1].value 'максимумы в [b2]
If Timer - t > 300 Then [a2].value = 0: [b2].value = 0: t = Timer 'каждые 300 сек. сброс значений [b2]=0, [a2]=0
tLoop = Timer: Do While Timer - tLoop < 0.2: DoEvents: Loop ' тут задержка чтоб проц не грузить
Loop
End Sub
Public Sub Stop_Rnd_min_max() 'это останавливает цикл
stoper = 1
End Sub
[/vba]