Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как быстро сгенерировать случайное время в Excel?

Author Xiaoyang Last modified

При работе с Excel часто требуется вставлять случайные числа, даты или текстовые строки для тестирования, анализа данных, планирования или моделирования. Однако бывают ситуации, когда необходимо вставить случайное время в определенном диапазоне или через конкретные интервалы — например, при создании фиктивных расписаний, заполнении журналов посещаемости или моделировании данных на основе времени для системных тестов. Хотя в Excel нет прямой функции для генерации случайного времени, существует несколько практических решений, включая встроенные формулы, удобные функции надстроек и гибкие методы макросов VBA.

Генерация случайного времени в Excel с помощью формул

Генерация случайного времени в Excel с помощью удобной функции

Генерация случайного времени в Excel с использованием кода VBA


Генерация случайного времени в Excel с помощью формул

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

Генерация случайного времени в Excel

Чтобы быстро заполнить диапазон случайными временами, введите следующую формулу в пустую ячейку. Затем перетащите маркер автозаполнения вниз, чтобы применить формулу к дополнительным строкам по мере необходимости. Это предоставляет отформатированное случайное значение времени между 00:00:00 и 23:59:59.

=TEXT(RAND(),"HH:MM:SS")

Generate random time

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


Генерация случайного времени между двумя временами в Excel

Если вы хотите создать случайные времена в ограниченном временном окне, например, между 11:00 и 15:00, вы можете использовать следующую формулу. Этот метод хорошо подходит для создания фиктивных расписаний, систем назначений или симуляций, где важно временное окно.

Введите следующую формулу в пустую ячейку. Перетащите маркер автозаполнения по диапазону, где нужно заполнить случайные времена.

=TEXT(RAND()*(15-11)/24+11/24,"HH:MM:SS")

 Generate random time between two times

Примечание: В этой формуле 11 и 15 представляют начальные и конечные часы в 24-часовом формате. Измените эти числа в соответствии с желаемым временным интервалом. Минуты и секунды будут случайно генерироваться в этом временном окне.

После того как времена сгенерированы, если вы хотите их зафиксировать, вставьте их как значения. Будьте осторожны: если ваши временные значения начинаются/заканчиваются точно в полночь (00:00), убедитесь, что формула использует 0 и 24 соответствующим образом, чтобы избежать ошибок связывания дат.


Генерация случайного времени с определенными интервалами в Excel

Для генерации случайных значений времени с установленными интервалами (например, каждые 15 или 30 минут) можно объединить функции FLOOR и RAND внутри функции TEXT. Это особенно полезно для задач, таких как создание рандомизированных бронирований, настройка случайных начал событий или равномерное распределение фиктивных данных с точными шагами.

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

=TEXT(FLOOR(RAND(),"0:15"),"HH:MM:SS")

Generate random time at specific intervals

Примечание: В этой формуле «0:15» устанавливает интервал в 15 минут. Измените это на «0:30» для получасовых интервалов или любую другую допустимую временную строку Excel в зависимости от ваших потребностей. Всегда используйте 24-часовой формат для временных интервалов, чтобы предотвратить ошибки.

 Для лучшей стабильности преобразуйте результаты в значения после их генерации.

a screenshot of kutools for excel ai

Раскройте магию Excel с Kutools AI

  • Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
  • Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формул: Легко разбирайтесь в сложных формулах.
  • Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Улучшите возможности Excel с помощью инструментов на базе ИИ. Скачать сейчас и испытайте беспрецедентную эффективность!

Генерация случайной даты и времени между двумя датами-времени в Excel

Для генерации случайных значений даты и времени — полезно при заполнении журналов случайных событий или записей о расписании — используйте следующую формулу. Этот подход комбинирует дату и время для более комплексных тестовых или имитационных данных.

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

=TEXT(RAND()*("2021-2-1012:00:00"-"2020-10-19:00")+"2020-10-19:00:00","YYYY-MM-DD HH:MM:SS")

Generate random date and time between two datetimes

Примечание: 2020-10-19:00:00 и 2021-2-1012:00:00 — это начальная и конечная точки; измените их в соответствии с вашими потребностями. Вводите даты в формате YYYY-MM-DD HH:MM:SS, чтобы избежать неоднозначности, особенно если ваша система использует разные форматы дат.

Когда вы тянете формулу вниз, каждая ячейка будет генерировать новую случайную дату и время в выбранном интервале. Если вам нужна только дата или только время, соответственно скорректируйте формат формулы (например, используйте «YYYY-MM-DD» для даты).


Генерация случайного времени в Excel с помощью удобной функции

Если управление формулами кажется утомительным или вам нужно быстро настроить массовое случайное заполнение данных, Kutools for Excel предлагает функцию Insert Random Data, которая позволяет вставлять случайные числа, даты, времена и даже пользовательские текстовые строки всего за несколько кликов. Это особенно подходит, если вам часто нужны случайные данные, вы хотите избежать пересчета формул или вам нужны дополнительные опции, такие как вставка уникальных временных значений в рамках диапазона.

Kutools для Excel предлагает более 300 продвинутых функций для упрощения сложных задач, повышая креативность и эффективность. Интеграция с возможностями ИИ позволяет Kutools автоматизировать задачи с высокой точностью, делая управление данными без усилий. Подробная информация о Kutools для Excel...  Бесплатная пробная версия...
Примечание: Чтобы использовать Insert Random Data, установите Kutools for Excel, затем следуйте инструкциям.

После установки Kutools for Excel выполните следующие действия:

1. Выберите пустой диапазон ячеек для случайных времен.

2. Перейдите к Kutools > Вставить > Вставить случайные данные.

click Insert Random Data feature of kutools

3. В диалоговом окне Вставить случайные данные перейдите на вкладку Время, введите желаемое начальное и конечное время в поля От и До соответственно.

specify the start and end time

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

4. Нажмите OK или Применить. Ваш выбор будет мгновенно заполнен случайными временами.

random time has been inserted into the cells

Скачайте и попробуйте бесплатно Kutools for Excel прямо сейчас!

Функция Вставить случайные данные особенно практична, если ваши случайные времена должны быть статическими (не будут меняться после вставки).


Генерация случайного времени в Excel с использованием кода VBA

Еще один гибкий способ генерации случайных времен в Excel — использование макросов VBA. Настроив VBA, вы можете добавить дополнительные требования — такие как исключение определенных часов, генерация времен через заданные интервалы или автоматическое обновление случайных времен при изменении рабочего листа. Использование макроса особенно полезно для пользователей, которым нужен больший контроль или которые хотят автоматизировать генерацию случайных времен для нескольких диапазонов или повторяющихся процессов.

Ниже представлен пример макроса VBA, который генерирует и заполняет случайные времена в выбранных ячейках. Вы можете настроить начальное/конечное время, детализацию рандомизации (минуты, секунды) или исключить определенные часы по необходимости.

1. Откройте редактор VBA, нажав Разработчик > Visual Basic. В окне VBA перейдите к Вставить > Модуль. Скопируйте и вставьте код ниже в только что созданный модуль. (Если вкладка Разработчик не отображается, включите ее в Параметры Excel > Настроить ленту.)

Sub GenerateRandomTimes()
    Dim WorkRng As Range
    Dim StartHour As Integer
    Dim EndHour As Integer
    Dim ExcludeHour As Integer
    Dim cell As Range
    Dim xTitleId As String
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Select range to fill random times:", xTitleId, WorkRng.Address, Type:=8)
    
    StartHour = Application.InputBox("Start hour (0-23):", xTitleId, 8, Type:=1)
    EndHour = Application.InputBox("End hour (1-24):", xTitleId, 18, Type:=1)
    ExcludeHour = Application.InputBox("Hour to exclude (if none, type -1):", xTitleId, -1, Type:=1)
    
    Application.ScreenUpdating = False
    Randomize
    
    For Each cell In WorkRng
        Dim h As Integer, m As Integer, s As Integer
        Do
            h = Int((EndHour - StartHour) * Rnd + StartHour)
        Loop While h = ExcludeHour
        
        m = Int(60 * Rnd)
        s = Int(60 * Rnd)
        
        cell.Value = TimeSerial(h, m, s)
        cell.NumberFormat = "hh:mm:ss"
    Next cell
    
    Application.ScreenUpdating = True
End Sub

2. Запустите макрос, нажав клавишу F5 . Появится запрос, позволяющий выбрать целевой диапазон ячеек. Затем вы сможете установить желаемое начальное время, конечное время и, при необходимости, любой час для исключения. Введите -1, если вы не хотите исключать какой-либо конкретный час. Макрос вставит уникальные случайные времена в выбранный диапазон.

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


Больше связанных статей:

  • Генерация случайной даты между двумя датами
  • При использовании файла Excel иногда вам может понадобиться сгенерировать случайные даты для каких-то целей. Конечно, вы можете ввести даты вручную одну за другой, но если вам нужно вставить несколько дат, этот метод будет трудоемким и утомительным. Как быстро сгенерировать случайные даты в Excel?
  • Проверка, находится ли время между двумя временами
  • В Excel, как можно проверить, находится ли конкретное время между двумя заданными временами? Проверка каждого из них займет много времени, здесь я представлю некоторые простые формулы для решения этой задачи.
  • Преобразование формата времени из 12-часового в 24-часовой и наоборот
  • При работе в Excel в своей повседневной работе вы можете использовать разные форматы времени в разных условиях, такие как 12-часовой формат и 24-часовой формат, как показано на следующем скриншоте. Но как преобразовать формат времени из 12-часового в 24-часовой и наоборот в Excel?
  • Расчет часов между временами после полуночи
  • Предположим, у вас есть таблица времени для записи вашего рабочего времени, время в столбце A — это время начала сегодняшнего дня, а время в столбце B — это время окончания следующего дня. Обычно, если вы рассчитываете разницу во времени между двумя временами напрямую минус «=B2-A2», это не покажет правильный результат, как показано на левом скриншоте. Как правильно рассчитать часы между двумя временами после полуночи в Excel?

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP по нескольким значениям | Многолистовой поиск | Распознавание нечетких соответствий ...
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ...
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгой и листами | Библиотека автотекста | Выбор даты | Объединить данные | Зашифровать/расшифровать ячейки | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр жирный/курсив/зачеркнутый...) ...
Топ15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ полезных формул (Расчет возраста на основе даты рождения, ...) |19 инструментов для вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое
Используйте Kutools на предпочитаемом вами языке — поддерживает Английский, Испанский, Немецкий, Французский, Китайский и более40 других языков!

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


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
  • Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!

Все надстройки Kutools. Один установщик

Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.

Excel Word Outlook Tabs PowerPoint
  • Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
  • Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
  • Совместная работа — максимальная эффективность между приложениями Office
  • 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
  • Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек