Как рандомно заполнить ячейки в excel
Перейти к содержимому

Как рандомно заполнить ячейки в excel

  • автор:

Как рандомно заполнить ячейки в excel

Argument ‘Topic id’ is null or empty

Сейчас на форуме

© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru

Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.

ООО «Планета Эксел»
ИНН 7735603520
ОГРН 1147746834949
ИП Павлов Николай Владимирович
ИНН 633015842586
ОГРНИП 310633031600071

Как заполнить диапазон ячеек случайными числами?

Для тестирования формул, моделирования различных процессов в Excel и решения других задач может использоваться генерация случайных чисел и заполнение диапазона ячеек случайными или рандомными числами. Для генерации случайных чисел, как правило, используется оператор Random, что в переводе с английского означает случайный, произвольный, выборочный.

Стандартные функции Excel

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

Надстройка «Пакет анализа»

Встроенная в excel надстройка «Пакет анализа» устанавливается через диалоговое окно менеджера надстроек. После установки на вкладке «Данные» ленты Excel появляется новая кнопка «Анализ данных». Одним из инструментов анализа является «Генерация случайных чисел». Подробнее об этом инструменте можно узнать в справке. Этот инструмент применяется для заполнения диапазона случайными числами, извлеченными из одного или нескольких распределений. С помощью этой процедуры можно моделировать объекты, имеющие случайную природу, по известному распределению вероятностей.

Генератор случайных чисел

Кроме стандартных средств в Excel может быть установлена дополнительная надстройка – простой, готовый к использованию генератор случайных чисел, который позволяет быстро заполнять выделенный диапазон ячеек случайными числами в различных вариациях.

kak zapolnit yachejki sluchajnymi chislami

Целые числа

В диалоговом окне надстройки указывается адрес выделенного диапазона, минимальное и максимальное значение интервала случайных чисел, после чего нажимается кнопка «Пуск». Значения нижней и верхней границы может быть, как положительным, так и отрицательным.

Целые числа без повторов

Если к вышесказанному добавить установку флажка в поле «Целые числа без повторения значений», то выделенный диапазон ячеек заполняется только уникальными целыми значениями. При этом если количество ячеек в выделенном диапазоне превышает количество уникальных чисел в заданном интервале, то некоторые ячейки могут остаться незаполненными.

Дробные числа с заданным количеством знаков

Для генерации дробных чисел достаточно в соответствующем поле задать количество знаков после запятой. При этом все случайные числа будут иметь заданное, либо меньшее количество значимых разрядов.

Дробные числа с разным количеством знаков после запятой

Кроме всего прочего в надстройке предусмотрена возможность генерации случайных (рандомных) чисел с различным количеством знаков после запятой. Это количество может варьироваться от 0 до 15.

Функция СЛЧИС

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще. Меньше

В этой статье описаны синтаксис формулы и использование функции СЛЧИС в Microsoft Excel.

Описание

Функция СЛЧИС возвращает равномерно распределенное случайное вещественное число, большее или равное 0, но меньшее 1. При каждом пересчете листа возвращается новое случайное вещественное число.

Примечание: начиная с версии Excel 2010, в Excel для генерации случайных чисел используется алгоритм «вихрь Мерсенна» (MT19937).

Синтаксис

У функции СЛЧИС нет аргументов.

Замечания

  • Чтобы получить случайное вещественное число в диапазоне между a и b, можно использовать следующую формулу:
  • Если требуется применить функцию СЛЧИС для генерации случайного числа, но изменение этого числа при каждом вычислении значения ячейки нежелательно, вы можете ввести в строке формулы =СЛЧИС(), а затем нажать клавишу F9, чтобы заменить формулу случайным числом. Формула вычисляется и оставляет только значение.

Пример

Скопируйте образец данных из приведенной ниже таблицы и вставьте их в ячейку A1 на новом листе Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — ВВОД. При необходимости вы можете настроить ширину столбцов, чтобы увидеть все данные.

Случайное число, большее или равное 0, но меньшее 1

Случайное число, большее или равное 0 и меньшее 100

Случайное целое число, большее или равное 0 и меньшее 100

Примечание. При пересчете листа после ввода формулы или данных в другую ячейку или при выполнении пересчета вручную (по нажатию клавиши F9) каждая формула, в которой используется функция СЛЧИС, создает новое случайное число.

Дополнительные сведения

Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.

Заполнение пустых ячеек случайными числами

Макрос перебирает в цикле все ячейки выделенного диапазона,
и в пустые ячейки вставляет случайные числа от 1 до 12:

Sub FillBlankCellsWithRandomNumbers() ' заполняет пустые ячейки выделенного диапазона ' случайными значениями от 1 до 12 Dim cell As Range, ra As Range ' ограничиваем выделенный диапазон используемой областью листа Set ra = Intersect(Selection, ActiveSheet.UsedRange) If ra Is Nothing Then MsgBox "В выделенном диапазоне нет пустых ячеек!", _ vbExclamation, "Нечего заполнять" Else Application.ScreenUpdating = False ' отключаем обновление экрана ' перебираем все ячейки в выделенном диапазоне For Each cell In ra.Cells ' если ячейка пустая - вычисляем случайное число, и заносим его в ячейку If Trim(cell) = "" Then cell = Fix(Rnd() * 12 + 1) Next cell ' можно и так - записать во все ячейки формулу, ' а потом заменить формулы значениями 'ra.Formula = "=INT(RAND()*12+1)": ra.Value = ra.Value End If End Sub
  • 24375 просмотров

Комментарии

Игорь (администратор сайта), 26 Окт 2012 — 16:57. #1

При таком большом диапазоне ячеек нужно их не в цикле заполнять,
а записать на лист весь массив целиком.

Sub FillBlankCellsWithRandomNumbers() Dim ra As Range ' ограничиваем выделенный диапазон используемой областью листа Set ra = Intersect(Selection, ActiveSheet.UsedRange) ' вставляем формулу сразу во все ячейки, потом меняем формулы на значения ra.Formula = "=INT(RAND()*12+1)": ra.Value = ra.Value End Sub

PS: Я не знаю, из-за чего такая ошибка.
По идее, код не имеет целочисленных счётчиков, и выдавать ошибку Overflow там нечему.

Гость, 26 Окт 2012 — 16:36. #2

При запуске макроса выдает Overflow, строк в таблице 43000, выделяю только один столбец. Как это можно обойти?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *