У меня есть следующая формула в Excel (не VBA):
=RANDBETWEEN(1,10)
Затем я автоматически заполняю 10 строк. Как я могу переписать формулу, чтобы числа не повторялись.
У меня есть следующая формула в Excel (не VBA):
=RANDBETWEEN(1,10)
Затем я автоматически заполняю 10 строк. Как я могу переписать формулу, чтобы числа не повторялись.
Существует простой способ сделать это с двумя столбцами. В A1 введите
=RAND()
и заполните до A10.
В соседнем столбце введите
=RANK(A1,$A$1:$A$10)
и заполнить вниз. Вероятность того, что из 10 десятичных чисел с плавающей запятой (с точностью до 15 цифр, я думаю) ничтожно малы, будет одинаковой. Таким образом, RANK
эффективно всегда генерирует случайный порядок значений от 1 до 10.
Этот предыдущий ответ делает нечто подобное: посмотрите, как массив idx
заполняется во втором примере.
Но это требует использования VBA. Я не знаю, хотите ли вы этого или настаиваете на использовании только формул рабочего листа.