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

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

Author: Sun Last Modified: 2025-06-05

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

Генерация только случайных рабочих дней в Excel

Генерация только случайных рабочих дней или только случайных выходных с помощью Kutools для Excel good idea3


arrow blue right bubble Генерация только случайных рабочих дней в Excel

В Excel есть два метода, которые помогут вам рандомизировать только рабочие дни в выбранном диапазоне дат.

Метод 1: Генерация случайного рабочего дня с помощью формулы

Выберите ячейку и введите эту формулу =ДАТА(2014; 1; 1)+НАИБОЛЬШИЙ(ЕСЛИ(ДЕНЬНЕДЕЛИ(ДАТА(2014; 1; 1)+СТРОКА($1:$365)-1; 2)<6; СТРОКА($1:$365)-1; ""); СЛЧИСЛОМЕЖДУ(1; СУММ(—(ДЕНЬНЕДЕЛИ(ДАТА(2014; 1; 1)+СТРОКА($1:$365)-1; 2)<6)))), затем нажмите Shift + Ctrl + Enter одновременно, затем перетащите маркер заполнения до нужного диапазона для генерации рабочих дней. Смотрите скриншот:
 generate random weekday with formula

Совет:

1. Если вы хотите генерировать уникальные случайные рабочие дни, вы можете использовать эту формулу =ДАТА(2014; 1; 1)+(НАИБОЛЬШИЙ(ЕСЛИ(ДЕНЬНЕДЕЛИ((ДАТА(2014; 1; 1)+СТРОКА($1:$365)-1)*((СЧЁТЕСЛИ($A$1:A1; ДАТА(2014; 1; 1)+СТРОКА($1:$365)-1))=0); 2)<6; СТРОКА($1:$365)-1; ""); СЛЧИСЛОМЕЖДУ(1; СУММ(—(ДЕНЬНЕДЕЛИ((ДАТА(2014; 1; 1)+СТРОКА($1:$365)-1)*((СЧЁТЕСЛИ($A$1:A1; ДАТА(2014; 1; 1)+СТРОКА($1:$365)-1))=0); 2)<6))))) и не забудьте нажать Shift + Ctrl + Enter.

2. В приведенных выше формулах 2014,1,1 — это начальная дата вашего диапазона дат, а 365 — количество дней в вашем диапазоне дат. Вы можете изменить их по своему усмотрению.

3. Формулу для генерации уникальных случайных рабочих дней нельзя размещать в A1.

Метод 2: Генерация случайного рабочего дня в пределах года с помощью VBA

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

1. Нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Вставка > Модуль, затем вставьте приведенный ниже код VBA в появившееся окно.

VBA: Рандомизация рабочих дней в пределах года.

Dim RandomizedYet As Boolean
'Updateby20150108
Function RandomizeDates(pYear As Long)
	Dim i As Long
	Dim DaysInYear As Long
	Dim xIndex As Long
	Dim RndIndex As Long
	Dim Temp As Date
	Dim Weekdays() As Variant
	If Not RandomizedYet Then
		RandomizedYet = True
		Randomize
	End If
	DaysInYear = DateSerial(pYear + 1, 1, 1) - DateSerial(pYear, 1, 1)
	ReDim Weekdays(1 To DaysInYear)
	For i = 1 To DaysInYear
		If Weekday(DateSerial(pYear, 1, i), vbMonday) < 6 Then
			xIndex           = xIndex + 1
			Weekdays(xIndex) = DateSerial(pYear, 1, i)
		End If
	Next
	ReDim Preserve Weekdays(1 To xIndex)
	For i = xIndex To 1 Step - 1
		RndIndex = Int(i * Rnd + 1)
		Temp = Weekdays(RndIndex)
		Weekdays(RndIndex) = Weekdays(i)
		Weekdays(i) = Temp
	Next
	RandomizeDates = Application.WorksheetFunction.Transpose(Weekdays)
End Function

3. Сохраните код и закройте окно, чтобы вернуться на лист, затем введите эту формулу=RandomizeDates(2014) в ячейку, затем нажмите Enter и перетащите маркер заполнения до нужного диапазона. Смотрите скриншот:
 generate random weekday within a year with user defined function


arrow blue right bubble Генерация только случайных рабочих дней или только случайных выходных с помощью Kutools для Excel

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

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

1. Выберите диапазон, в котором вы хотите сгенерировать рабочие дни или даты выходных, затем нажмите Kutools > Вставить случайные данные. Смотрите скриншот:
click Insert Random Data feature of kutools

2. В окне Вставить случайные данные нажмите Дата вкладку, затем кнопку календаря для выбора начальной и конечной даты, затем отметьте Рабочий день или Выходные опцию, которая вам нужна. Если вы хотите генерировать уникальные даты, вы можете отметить опцию Уникальные значения . Смотрите скриншот:
specify the start and end date in the dialog box

3. Нажмите Ok для применения и закрытия диалогового окна, затем в выбранном диапазоне будут сгенерированы уникальные даты выходных.
the unique weekend dates are generated

Совет: Если вам разрешено вставлять повторяющиеся данные, просто снимите флажок Уникальные значения в диалоговом окне.

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


Связанные статьи

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

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

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


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

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