4

У меня есть следующая формула в Excel (не VBA):

=RANDBETWEEN(1,10)

Затем я автоматически заполняю 10 строк. Как я могу переписать формулу, чтобы числа не повторялись.

2 ответа2

8

Существует простой способ сделать это с двумя столбцами. В A1 введите

 =RAND()

и заполните до A10.

В соседнем столбце введите

=RANK(A1,$A$1:$A$10)

и заполнить вниз. Вероятность того, что из 10 десятичных чисел с плавающей запятой (с точностью до 15 цифр, я думаю) ничтожно малы, будет одинаковой. Таким образом, RANK эффективно всегда генерирует случайный порядок значений от 1 до 10.

0

Этот предыдущий ответ делает нечто подобное: посмотрите, как массив idx заполняется во втором примере.

Но это требует использования VBA. Я не знаю, хотите ли вы этого или настаиваете на использовании только формул рабочего листа.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .