Как использовать RANDBETWEEN в Google Таблицах

Что делает RANDBETWEEN
RANDBETWEEN возвращает случайное целое число между указанными нижним и верхним пределами включительно. Если вы задаёте дробные границы, Google Таблицы округляет их до ближайших целых: верхняя граница вниз, нижняя граница вверх.
Определение термина: волатильная формула — формула, которая пересчитывается автоматически при изменениях или при открытии файла.
Синтаксис
=RANDBETWEEN(lower, upper)- lower — нижняя граница диапазона. Результат будет >= lower.
- upper — верхняя граница диапазона. Результат будет <= upper.
Пример поведения с дробями: если lower = 2.6, то фактически используется 3; если upper = 10.4, то фактически используется 10.
Важно: RANDBETWEEN возвращает только целые числа. Для десятичных значений используйте RAND или преобразуйте результат делением.
Почему выбирать RANDBETWEEN вместо RAND
Краткие отличия:
- RANDBETWEEN возвращает целые значения в заданном диапазоне. RAND возвращает десятичное значение от 0 до 1.
- RAND принимает no параметры; RANDBETWEEN требует lower и upper.
- Для равномерной генерации внутри произвольного диапазона с целыми значениями RANDBETWEEN проще и прямее.
Когда RANDBETWEEN неудобен:
- Если вам нужны уникальные значения без повторов. RANDBETWEEN может выдавать повторы.
- Если нужны дробные случайные значения — используйте RAND() и масштабируйте.
Примеры использования в Google Таблицах
Простое применение
Шаги:
- Выберите ячейку, где хотите увидеть случайное число.
- Введите формулу:
=RANDBETWEEN(1, 100). - Нажмите Enter.
Формула вернёт целое число от 1 до 100 включительно.
Вложенное использование для выбора случайного имени
Цель: из списка A2:A11 случайно выбрать одну запись.
Формула:
=INDEX(A2:A11, RANDBETWEEN(1, COUNTA(A2:A11)))Пошагово:
- INDEX возвращает элемент по позиции в диапазоне.
- COUNTA считает количество непустых ячеек в диапазоне — это верхняя граница.
- RANDBETWEEN генерирует случайную позицию от 1 до количества элементов.
Как получить несколько уникальных случайных элементов
RANDBETWEEN сам по себе может повторять значения. Если нужно получить несколько уникальных строк, используйте один из подходов ниже.
Вариант A — вспомогательный столбец с RAND и сортировка:
- Вставьте рядом с диапазоном столбец «Ключ» и в первой строке ключа напишите
=RAND(). - Протяните формулу вниз на весь диапазон.
- Отсортируйте таблицу по этому столбцу.
- Возьмите первые N строк — они будут случайно перемешаны без повторов.
Вариант B — Apps Script (если требуется повторяемость управления, сложная логика или большой объём):
- Напишите короткий скрипт, который перемешивает массив и возвращает первые N элементов.
- Скрипт даёт больше контроля: можно фиксировать seed, избегать коллизий и создавать исторические выборки.
Важно: сортировка по RAND() — надёжный и простой метод, который не требует расширенных функций.
Поведение формулы и настройки пересчёта
RANDBETWEEN — волатильная формула. Она пересчитывается в следующих случаях:
- вы редактируете ячейки;
- вы просматриваете файл;
- при открытии файла.
Если нужен частый автоматический пересчёт, можно изменить настройки пересчёта:
- Файл → Настройки.
- Откройте вкладку Расчёт.
- Пункт Пересчёт: выберите «При изменении», «При изменении и каждую минуту» или «При изменении и каждый час».
Примечание: частый пересчёт замедляет работу файла, особенно если в нём много формул.
Практические советы и шаблоны
Полезные приёмы
- Зафиксировать случайный набор: скопируйте и вставьте значения (Вставить специальные → Только значения), чтобы прекратить пересчёт.
- Масштабирование:
=INT(RAND()*(upper-lower+1)) + lower— альтернатива RANDBETWEEN с тем же результатом. - Дробные случайные числа:
=RAND()*(upper-lower)+lower.
Шаблон: рандомный рейтинг от 1 до 5 для N строк
- В соседнем столбце используйте
=RANDBETWEEN(1,5). - Протяните формулу вниз.
- Если нужно зафиксировать оценки, вставьте значения.
Пример: выбор N уникальных строк методом вспомогательного столбца
- В столбце B в строке 2:
=RAND(). - Протяните вниз до конца списка.
- Отсортируйте диапазон по столбцу B по возрастанию или убыванию.
- Возьмите первые N строк.
Когда RANDBETWEEN не годится и альтернативы
Ситуации, где RANDBETWEEN не подходит:
- Нужны уникальные значения без повторов в массовой выборке.
- Нужны стабильные результаты между сессиями без сохранения значений.
- Нужен контроль над генератором случайных чисел (seed).
Альтернативы:
- RAND + вспомогательный столбец + сортировка — для уникальных выборок.
- Apps Script — для детального контроля, логирования и фиксированных seed.
- RAND() с масштабированием — для дробных значений.
Модель принятия решения — когда использовать RANDBETWEEN
- Цель: один случайный целочисленный выбор → используйте RANDBETWEEN.
- Цель: несколько уникальных записей → сначала перемешайте таблицу по RAND, затем возьмите верхние строки.
- Цель: сложная логика или повторяемость → используйте Apps Script.
Корректная работа в больших таблицах и оптимизация
RANDBETWEEN и RAND интенсивно используют пересчёт. Если у вас:
- тысячи строк с RAND/RANDBETWEEN — файл может тормозить;
- необходимо частое использование — рассмотрите генерацию случайных чисел пакетно (скрипт) и вставку значений;
- требуется отчётность и повторяемость — логируйте выборы в отдельный лист.
Совет по производительности: минимизируйте область с волатильными формулами. Используйте их только там, где это действительно нужно.
Роль-based чек-листы
Для аналитика:
- Определите, нужны ли уникальные результаты.
- Если да — используйте вспомогательную колонку с RAND и сортировку.
- Зафиксируйте значения, если они должны оставаться неизменными.
Для преподавателя (выбор случайного студента):
- Используйте
=INDEX(A2:A, RANDBETWEEN(1, COUNTA(A2:A))). - Скопируйте результат в отдельную ячейку как значение, чтобы избежать пересчёта.
Для разработчика (предварительное тестирование):
- Используйте RANDBETWEEN для генерации тестовых целых данных.
- Для больших наборов данных лучше генерировать данные вне интерфейса Таблиц и импортировать.
Краткая методика отбора случайной выборки в 6 шагов
- Определите размер выборки N.
- Убедитесь, что диапазон не содержит пустых строк или отфильтруйте их.
- Добавьте вспомогательный столбец с
=RAND(). - Отсортируйте по вспомогательному столбцу.
- Возьмите первые N строк.
- При необходимости вставьте значения, чтобы зафиксировать выбор.
Частые ошибки и как их избежать
Ошибка: ожидание уникальных чисел от RANDBETWEEN при небольшом диапазоне. Решение: используйте сортировку по RAND или скрипт.
Ошибка: случайные значения меняются в отчёте. Решение: вставьте как значения или снимите формулы в отдельный лист.
Ошибка: использование дробных границ без понимания округления. Решение: заранее округляйте границы с помощью INT или ROUNDUP.
Важно: всегда проверяйте, фиксированы ли данные, если вы используете результаты случайной генерации в официальных отчётах.
Краткое резюме
RANDBETWEEN — простой и удобный способ получить случайное целое число в нужных границах. Он хорош для единичных выборов, тестовых данных и быстрых симуляций. Для выборок без повторов или для контроля над случайностью используйте сортировку по RAND или Apps Script. Не забывайте про волатильность и возможные проблемы с производительностью.
Краткое действие: если хотите один случайный элемент — используйте RANDBETWEEN; если нужно несколько уникальных — перемешайте список по RAND и возьмите первые N строк.
Похожие материалы
Троян Herodotus: как он действует и как защититься
Включить новое меню «Пуск» в Windows 11
Панель полей PivotTable в Excel — руководство
Включить новый Пуск в Windows 11 — инструкция
Дубликаты Диспетчера задач в Windows 11 — как исправить