Створення послідовності дат в Excel та автозаповнення рядів дат

  • Поділитися Цим
Michael Brown

У навчальному посібнику показано, як можна використовувати нову функцію ПОСЛІДОВНІСТЬ для швидкого створення списку дат в Excel і використовувати функцію автозаповнення для заповнення стовпця датами, робочими днями, місяцями або роками.

До недавнього часу існував лише один простий спосіб створення дат в Excel - функція автозаповнення. Впровадження нової функції динамічного масиву ПОСЛІДОВНІСТЬ дозволило зробити серію дат ще й за допомогою формули. У цьому уроці детально розглядаються обидва способи, щоб ви могли вибрати той, який найкраще підходить саме вам.

    Як заповнити діапазон дат в Excel

    Коли потрібно заповнити стовпець датами в Excel, найшвидший спосіб - скористатися функцією автозаповнення.

    Автоматичне заповнення діапазону дат в Excel

    Заповнити стовпець або рядок датами, які збільшуються на один день, дуже просто:

    1. Введіть початкову дату в першу комірку.
    2. Виділіть комірку з початковою датою та перетягніть маркер заповнення (маленький зелений квадратик у правому нижньому куті) вниз або вправо.

    Excel негайно згенерує серію дат у тому ж форматі, що і перша дата, яку ви ввели вручну.

    Заповніть колонку днями тижня, місяцями або роками

    Щоб створити серію робочих днів, місяців або років, виконайте одну з наступних дій:

    • Заповніть стовпчик послідовними датами, як описано вище. Після цього натисніть кнопку Параметри автозаповнення та оберіть потрібну опцію, скажімо Місяці заповнення :

    • Або Ви можете ввести першу дату, натиснути правою кнопкою миші на маркер заповнення, утримувати його і перетягнути через необхідну кількість клітинок. Коли Ви відпустите кнопку миші, з'явиться контекстне меню, в якому Ви зможете вибрати потрібну опцію, Заповнити роки у нашому випадку:

    Заповнити ряд дат з кроком N днів

    Для автоматичної генерації серії днів, тижнів, місяців або років з конкретний крок Це те, що вам потрібно зробити:

    1. Введіть початкову дату в першу комірку.
    2. Виділіть цю клітинку, клацніть правою кнопкою миші маркер заповнення, перетягніть його через стільки клітинок, скільки потрібно, а потім відпустіть.
    3. У спливаючому меню оберіть Серія (останній пункт).
    4. В рамках проекту Серія виберіть у діалоговому вікні Одиниця виміру дати і встановлюємо, що цікавить, і встановлюємо, що цікавить. Значення кроку .
    5. Натисни ОК.

    Більше прикладів див. у розділі Вставка та автозаповнення дат в Excel.

    Як зробити послідовність дат в Excel за допомогою формули

    В одному з попередніх уроків ми розглянули, як використовувати нову функцію динамічного масиву ПОСЛІДОВНІСТЬ для генерації числової послідовності. Оскільки всередині Excel дати зберігаються у вигляді порядкових номерів, функція може легко генерувати і серію дат. Для цього потрібно лише правильно налаштувати аргументи, як показано в наступних прикладах.

    Примітка: всі розглянуті тут формули працюють тільки в останніх версіях Excel 365, що підтримують динамічні масиви. У додинамічних Excel 2019, Excel 2016 і Excel 2013 використовуйте функцію автозаповнення, як показано в першій частині цього уроку.

    Створення ряду дат в Excel

    Для генерації послідовності дат в Excel задайте наступні аргументи функції ПОСЛЕДОВАТЕЛЬНОСТЬ:

    SEQUENCE(рядки, [стовпці], [початок], [крок])
    • Ряди - кількість рядків для заповнення датами.
    • Колонки - кількість колонок для заповнення датами.
    • Старт - дату початку у форматі, який розуміє Excel, наприклад, "8/1/2020" або "1-Авг-2020". Щоб уникнути помилок, можна вказати дату за допомогою функції ДАТА, наприклад, ДАТА(2020, 8, 1).
    • Крок - приріст на кожну наступну дату в послідовності.

    Наприклад, щоб скласти список з 10 дат, починаючи з 1 серпня 2020 року і збільшуючи на 1 день, формула виглядає наступним чином:

    =SEQUENCE(10, 1, "8/1/2020", 1)

    або

    =SEQUENCE(10, 1, DATE(2020, 8, 1), 1)

    Крім того, ви можете ввести кількість дат (B1), дату початку (B2) та крок (B3) у заздалегідь визначені комірки та посилатися на ці комірки у своїй формулі. Оскільки ми створюємо список, номер стовпця (1) є жорстко закодованим:

    =SEQUENCE(B1, 1, B2, B3)

    Введіть наведену нижче формулу в саму верхню комірку (в нашому випадку А6), натисніть клавішу Enter, і результати автоматично розподіляться по вказаній кількості рядків і стовпців.

    Примітка. За замовчуванням Генеральний Для правильного відображення результатів необхідно застосувати формат Дата до всіх комірок діапазону розливу.

    Скласти ряд робочих днів в Excel

    Щоб отримати серію тільки робочих днів, оберніть SEQUENCE у функцію WORKDAY або WORKDAY.INTL таким чином:

    РОБОЧИЙ ДЕНЬ( дата_початку -1, SEQUENCE( немає_днів ))

    Оскільки функція РАБОЧИЙДЕНЬ додає до дати початку кількість днів, зазначену в другому аргументі, ми віднімаємо від неї 1, щоб мати в результатах саму дату початку.

    Наприклад, для генерації послідовності робочих днів, що починаються з дати в комірці B2, формула має вигляд:

    =WORKDAY(B2-1, SEQUENCE(B1))

    Де B1 - розмір послідовності.

    Поради та примітки:

    • Якщо дата початку припадає на суботу або неділю, то серія розпочнеться наступного робочого дня.
    • Функція WORKDAY в Excel припускає, що субота та неділя є вихідними днями. Щоб налаштувати власні вихідні та святкові дні, використовуйте функцію WORKDAY.INTL.

    Сформувати послідовність місяців в Excel

    Для створення ряду дат, збільшених на один місяць, можна скористатися такою загальною формулою:

    DATE( рік , SEQUENCE(12), день )

    У цьому випадку ви вводите цільовий рік в 1-й аргумент і день в 3-й аргумент. Для 2-го аргументу функція ПОСЛІДОВНІСТЬ повертає порядкові номери від 1 до 12. На основі вищевказаних параметрів функція ДАТА видає серію дат, як показано в лівій частині скріншоту нижче:

    =DATE(2020, SEQUENCE(12), 1)

    Для відображення тільки назви місяців , встановіть один з наведених нижче користувацьких форматів дати для діапазону розливу:

    • ммм - коротка форма на зразок Ян , Лютий , Березень і т.д.
    • mmmm - повна форма як січень , лютий , Березень і т.д.

    В результаті в комірках з'являться лише назви місяців, але базові значення все одно будуть повними датами. В обох серіях на скріншоті нижче, будь ласка, зверніть увагу на вирівнювання за замовчуванням по правому краю, характерне для чисел і дат в Excel:

    Згенерувати послідовність дат, яка збільшується на один місяць та починається з конкретної дати використовуйте функцію SEQUENCE разом з EDATE:

    EDATE( дата_початку , SEQUENCE(12, 1, 0))

    Функція EDATE повертає дату, яка є вказаною кількістю місяців до або після дати початку. А функція SEQUENCE створює масив з 12 чисел (або стільки, скільки ви вкажете), щоб змусити EDATE рухатися вперед з кроком в один місяць. Зверніть увагу, що функція початок дорівнює 0, щоб дата початку враховувалася в результатах.

    З датою початку в B1 формула набуває такого вигляду:

    =EDATE(B1, SEQUENCE(12, 1, 0))

    Примітка: Після заповнення формули, будь ласка, не забудьте застосувати відповідний формат дати до результатів для їх коректного відображення.

    Створення послідовності років в Excel

    Для того, щоб зробити ряд дат, збільшених по роках, використовуйте цю загальну формулу:

    DATE(SEQUENCE( n , 1, YEAR( дата_початку )), МІСЯЦЬ( дата_початку ), ДЕНЬ( дата_початку ))

    Де n кількість дат, які потрібно згенерувати.

    У цьому випадку функція ДАТА(рік, місяць, день) конструює дату таким чином:

    • Рік повертається функцією SEQUENCE, яка налаштована на генерацію n рядків по 1 стовпчику масив чисел, починаючи зі значення року від дата_початку .
    • Місяць і день значення беруться безпосередньо з дати початку.

    Наприклад, якщо ви введете дату початку в B1, наступна формула виведе серію з 10 дат з кроком в один рік:

    =DATE(SEQUENCE(10, 1, YEAR(B1)), MONTH(B1), DAY(B1))

    Після форматування у вигляді дат результати будуть виглядати наступним чином:

    Створення часової послідовності в Excel

    Оскільки час зберігається в Excel у вигляді десяткових чисел, що представляють частку доби, функція ПОСЛІДОВНІСТЬ може працювати з часом безпосередньо.

    Припускаючи, що час початку знаходиться в B1, ви можете використовувати одну з наступних формул, щоб створити серію з 10 разів. Різниця полягає лише в тому, що крок Аргумент: оскільки в добі 24 години, використовуйте 1/24 для збільшення на годину, 1/48 для збільшення на 30 хвилин і так далі.

    З інтервалом у 30 хвилин:

    =SEQUENCE(10, 1, B1, 1/48)

    З різницею в 1 годину:

    =SEQUENCE(10, 1, B1, 1/24)

    З різницею в 2 години:

    =SEQUENCE(10, 1, B1, 1/12)

    Скріншот нижче демонструє результати:

    Якщо ви не хочете обтяжувати себе розрахунком кроку вручну, ви можете визначити його за допомогою функції ВРЕМЯ:

    SEQUENCE(rows, columns, start, TIME( година , хвилина , другий ))

    Для цього прикладу ми введемо всі змінні в окремі комірки, як показано на скріншоті нижче. А потім ви можете використовувати наведену нижче формулу для створення часового ряду з будь-яким розміром кроку, який ви вкажете в комірках E2 (години), E3 (хвилини) та E4 (секунди):

    =ПОСЛІДОВНІСТЬ(B2, B3, B4, ЧАС(E2, E3, E4))

    Як створити місячний календар в Excel

    У цьому останньому прикладі ми будемо використовувати функцію SEQUENCE разом з DATEVALUE і WEEKDAY для створення щомісячного календаря, який буде автоматично оновлюватися на основі вказаних вами року і місяця.

    Формула в А5 виглядає наступним чином:

    =ПОСЛІДОВНІСТЬ(6, 7, ЗНАЧЕННЯ ДАТИ("1/"&B2&"/"&B1) - ТИЖДЕНЬ(ЗНАЧЕННЯ ДАТИ("1/"&B2&"/"&B1)) + 1, 1)

    Як працює ця формула:

    За допомогою функції ПОСЛІДОВНІСТЬ формується масив дат з 6 рядків (максимально можлива кількість тижнів у місяці) на 7 стовпців (кількість днів у тижні), які збільшуються на 1 день. Таким чином, функція ПОСЛІДОВНІСТЬ ряди , колонки і крок аргументи не викликають питань.

    Найскладнішим у цій справі є те, що початок Аргумент. Ми не можемо починати наш календар з 1-го числа цільового місяця, оскільки не знаємо, який це день тижня. Отже, ми використовуємо наступну формулу, щоб знайти першу неділю перед 1-м числом заданого місяця і року:

    DATEVALUE("1/"&B2&"/"&B1) - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1

    Перша функція DATEVALUE повертає порядковий номер, який у внутрішній системі Excel відповідає 1-му числу місяця в комірці B2 та року в комірці B1. У нашому випадку це 44044, що відповідає 1 серпня 2020 року. На даний момент ми маємо:

    44044 - WEEKDAY(DATEVALUE("1/"&B2&"/"&B1)) + 1

    Функція ДЕНЬТИЖНЯ повертає день тижня, відповідний 1-му числу цільового місяця у вигляді числа від 1 (неділя) до 7 (субота). У нашому випадку це 7, тому що 1 серпня 2020 року - субота. І наша формула зводиться до:

    44044 - 7 + 1

    44044 - 7 - 4403, що відповідає суботі 25 липня 2020 р. Оскільки нам потрібна неділя, додаємо поправку +1.

    Таким чином, ми отримуємо просту формулу, яка виводить масив серійних номерів, починаючи з 4404:

    =SEQUENCE(6, 7, 4404, 1)

    Відформатуйте результати у вигляді дат, і ви отримаєте календар, показаний на скріншоті вище. Наприклад, ви можете використовувати один з наступних форматів дат:

    • д-ммм-yy для відображення таких дат, як 1-Aug-20
    • mmm d для відображення місяця і дня як 20 серпня
    • d для відображення тільки дня

    Зачекайте, але ж ми маємо на меті створити місячний календар. Чому відображаються деякі дати попереднього і наступного місяця? Щоб приховати ці неактуальні дати, створіть правило умовного форматування за допомогою наведеної нижче формули і застосуйте функцію білий шрифт колір:

    =MONTH(A5)MONTH(DATEVALUE($B$2 & "1"))

    Де A5 - крайня ліва клітинка календаря, а B2 - цільовий місяць.

    Детальні кроки див. у статті Як створити правило умовного форматування на основі формули в Excel.

    Ось так можна сформувати послідовність дат в Excel. Дякую за прочитання і сподіваюся побачити вас на нашому блозі наступного тижня!

    Практичний посібник для завантаження

    Послідовність дат в Excel - приклади формул (файл .xlsx)

    Майкл Браун — відданий ентузіаст технологій із пристрастю до спрощення складних процесів за допомогою програмних засобів. Маючи понад десятирічний досвід роботи в технологічній індустрії, він відточив свої навички роботи з Microsoft Excel і Outlook, а також із Google Таблицями та Документами. Блог Майкла присвячений тому, щоб поділитися своїми знаннями та досвідом з іншими, надаючи прості поради та навчальні посібники для підвищення продуктивності та ефективності. Незалежно від того, чи є ви досвідченим професіоналом чи початківцем, блог Майкла пропонує цінну інформацію та практичні поради щодо отримання максимальної користі від цих основних програмних інструментів.