Я искал похожий вопрос, но не смог его найти ..

Я хочу создать 10 групп из чисел в диапазоне от 1 до 60 (включая обе), причем каждая группа содержит случайные и неповторяющиеся числа. Как я могу сделать это в Excel?

2 ответа2

1

Как это использовать

  1. Откройте редактор Excel и VBA (Alt+F11)
  2. Вставьте код ниже под Sheet1
  3. Вернитесь в Excel и выберите желаемый диапазон для заполнения случайными и неповторяющимися числами.
  4. Выполнить макрос (Alt+F8)

Sub randomNumbers()
    Low = Application.InputBox("Enter first valid value", Type:=1)
    High = Application.InputBox("Enter last valid value", Type:=1)
    Selection.Clear
    For Each cell In Selection.Cells
        If WorksheetFunction.CountA(Selection) = (High - Low + 1) Then Exit For
        Do
            rndNumber = Int((High - Low + 1) * Rnd() + Low)
        Loop Until Selection.Cells.Find(rndNumber, LookIn:=xlValues, lookat:=xlWhole) Is Nothing
        cell.Value = rndNumber
    Next
End Sub

Excel файл для доказательства

Я так люблю эти маленькие и простые решения

1

Я думал, что у меня есть ответ, но это был тупик (но довольно забавный), и я не знаю, как его удалить. Мне нужно сделать бинго-листы со случайными настройками.

Сделайте столбец A4:A63 с номерами от 1 до 60. Введите довольно большое простое число меньше 60 ячеек B1. Например '47 `.

В Б2 введите

= СЛУЧМЕЖДУ (1; 59)

В строках B4:B63 заполните

=MOD(((A4+B$2)*B$1);60)+1 
=MOD(((A5+B$2)*B$1);60)+1 
...
=MOD(((A63+B$2)*B$1);60)+1 

Это сделает довольно случайную последовательность. B $ 2 только сместит последовательность.

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