Как перечислить все даты между двумя датами в Excel?
В некоторых случаях, если у вас есть определённые начальная и конечная даты, может понадобиться вывести все даты между этими двумя датами в Excel. В этом руководстве рассматриваются различные способы перечисления всех дат между двумя датами в Excel.
Перечисление всех дат между двумя датами с помощью формул
Перечисление всех дат между двумя датами с помощью Kutools для Excel
Перечисление всех дат между двумя датами с помощью VBA
Перечисление всех дат между двумя датами с помощью формул
Здесь я расскажу о формулах, которые позволяют быстро вывести все даты между двумя заданными датами в Excel.
1. Введите начальную и конечную даты в две ячейки, например, в ячейки A1 и A2. Смотрите скриншот:
2. Затем перейдите к ячейке C1 и введите следующую формулу =A1+1 в неё, затем нажмите Enter клавишу. Смотрите скриншот:
3. Затем в ячейке C2 введите следующую формулу =IF($A$1+ROW(A1)>=$A$2-1,"",C1+1), после чего протяните маркер автозаполнения вниз до появления пустой ячейки. Смотрите скриншоты:
Теперь вы увидите, что все даты между двумя заданными датами перечислены в столбце.
Примечание:
В приведённых выше формулах A1 — это начальная дата, A2 — конечная дата, а C1 — первая дата в диапазоне дат.
Перечисление всех дат между двумя датами с помощью Kutools для Excel
На самом деле, если у вас установлен Kutools для Excel — удобный дополнительный инструмент, вы также можете использовать функцию Вставить случайные данные для решения этой задачи.
После бесплатной установки Kutools для Excel выполните следующие действия:
1. Выделите столбец, в котором хотите вывести даты между двумя датами, и нажмите Kutools > Вставить > Вставить случайные данные. Смотрите скриншот:
2. Затем в Вставить случайные данные диалоговом окне нажмите Дата вкладку, затем выберите начальную и конечную даты из От и Досписка, затем не забудьте отметить Рабочие дни, Выходные дни и Сгенерировать уникальные значения флажки. Смотрите скриншот:
3. Нажмите Ok, чтобы закрыть диалоговое окно, затем появится ещё одно окно Kutools для Excel — просто нажмите Yes. После этого вы увидите, что даты между начальной и конечной датами перечислены. Смотрите скриншоты:
4. Теперь необходимо отсортировать список дат в нужном порядке. Нажмите Данные > Сортировка от старых к новым. После этого вы увидите, что даты отсортированы от самой ранней к самой поздней. Смотрите скриншоты:
С помощью утилиты Вставить случайные данные вы также можете вставлять случайные целые числа, строки и время и многое другое. Подробнее о Вставить случайные данные читайте здесь.
Перечисление всех дат между двумя датами с помощью VBA
Если вам интересен макрос-код, вы можете воспользоваться приведённым ниже VBA для вывода всех дат между двумя заданными датами в Excel.
1. Введите начальную и конечную даты в две ячейки, например, в ячейки A1 и B1. Смотрите скриншот:
2. Нажмите клавиши Alt +F11, чтобы открыть окно Microsoft Visual Basic for Applications.
3. Затем выберите Вставить > Модуль и скопируйте приведённый ниже код VBA в открывшееся окно Модуля.
VBA: Перечисление всех дат между двумя датами.
Sub WriteDates()
'Updateby20150305
Dim rng As Range
Dim StartRng As Range
Dim EndRng As Range
Dim OutRng As Range
Dim StartValue As Variant
Dim EndValue As Variant
xTitleId = "KutoolsforExcel"
Set StartRng = Application.Selection
Set StartRng = Application.InputBox("Start Range (single cell):", xTitleId, StartRng.Address, Type: = 8)
Set EndRng = Application.InputBox("End Range (single cell):", xTitleId, Type: = 8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type: = 8)
Set OutRng = OutRng.Range("A1")
StartValue = StartRng.Range("A1").Value
EndValue = EndRng.Range("A1").Value
If EndValue - StartValue <= 0 Then
Exit Sub
End If
ColIndex = 0
For i = StartValue To EndValue
OutRng.Offset(ColIndex, 0) = i
ColIndex = ColIndex + 1
Next
End Sub
4. Нажмите Выполнить или F5 для запуска VBA, после чего появится диалоговое окно для выбора начальной даты — выберите её и нажмите OK, затем во втором появившемся окне выберите конечную дату. Смотрите скриншот:
5. Нажмите OK, затем выберите ячейку для вывода дат и снова нажмите OK. Теперь вы увидите, что все даты между двумя датами перечислены. Смотрите скриншоты:
Примечание: Список, созданный этим VBA, включает начальную и конечную даты.
Перечисление всех дат между двумя датами
Похожие статьи:
Лучшие инструменты для повышения продуктивности работы с Office
Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
- Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!