Случайное число между двумя значениями в Excel

Функция СЛУЧМЕЖДУСТАТ возвращает случайное значение между двумя числовыми значениями (функция не пересчитывается автоматически)

Описание функции

В Excel имеется функция СЛУЧМЕЖДУ, она возвращает случайное число в заданных границах. Единственный ее минус в том, что она постоянно пересчитывается, даже при вводе значений, никак не связанных с формулой. Все прекрасно работает если у вас немного вычислений и мощный компьютер. Однако постоянный пересчет формулы иногда снижает продуктивность, приходится ждать когда все вычисления выполнятся. Поэтому в надстройку добавили аналогичную функцию, но которая не пересчитывается постоянно.

Функция =СЛУЧМЕЖДУСТАТ(Нижн_граница; Верхн_граница) имеет два аргумента:

  • - Нижн_граница - Нижнее (минимальное) значение диапазона. По умолчанию данный аргумент равен 0.
  • - Верхн_граница - Верхнее (максимальное) значение диапазона. По умолчанию данный аргумент равен 1.

Данная функция пересчитывается в следующих случаях:

  1. Когда вы повторно вводите функцию;
  2. Когда вы изменяете значения какого-либо аргумента;
  3. Когда вы выполняете пересчет книги или листа.

Продемонстрируем работу на следующих примерах:

Пример 1

Заполнение диапазона случайными значениями от 1 до 1000.

Пример функции СЛУЧМЕЖДУСТАТ

Пример 2

Заполнение диапазона случайными целыми значениями от 1 до 1000

Пример функции СЛУЧМЕЖДУСТАТ

Код на VBA

Public Function СЛУЧМЕЖДУСТАТ(Optional Нижн_граница As Double = 0, Optional Верх_граница As Double = 1) As Double
    Application.Volatile False
    Randomize
    СЛУЧМЕЖДУСТАТ = (Верх_граница - Нижн_граница) * Rnd + Нижн_граница
End Function
Надстройка
VBA-Excel
Надстройка для Excel содержит большой набор полезных функций, с помощью которых вы значительно сократите время и увеличите скорость работы с программой.