Как Таблицы работают с датой и временем
Когда вы печатаете в ячейку A1 таблицы «8.03.2027», Таблицы сохраняют не буквально саму эту строчку текста, а как таковую дату 8 марта 2027 года.
Это дает вам возможность работать с датой как с полноценным элементом календаря. Вы можете прибавить к дате год, месяц или неделю, посчитать количество дней между двумя датами, подставить в формулу сегодняшнюю дату и так далее. В таких расчетах Таблицы автоматически учтут продолжительность месяцев, приходится ли дата на високосный год и так далее.
Как это работает
Все дни календаря начиная с 1 января 1900 года до 31 декабря 9999 года имеют сквозную нумерацию. Первый день имеет номер 1, а 31 декабря 9999 года имеет номер 2958465.
| День | Номер дня в Таблицах |
|---|---|
| 1 января 1900 года | 1 |
| 2 января 1900 года | 2 |
| ... | |
| 1 января 2025 года | 45658 |
| ... | |
| 8 марта 2027 года | 46454 |
| ... | |
| 31 декабря 9999 года | 2958465 |
Поэтому, когда вы напечатали в ячейке «8.03.2027», Таблицы сохранили в ней номер этого дня — то есть число 46454.
Вы видите и даже можете редактировать в ячейке дату, а не число, благодаря формату ячейки. Формат ячейки приводит хранящиеся в ней данные к наглядному виду.
Поэкспериментируйте, чтобы лучше понять
Введите в ячейку число 46454, а затем щелкните по ней правой кнопкой мыши и выберите Формат числа → Короткая дата. Измените дату на какую-нибудь другую, а затем установите для ячейки формат Числовой.
Как хранится время
Яндекс Таблицы могут хранить не только дату, но и точный момент времени внутри этой даты.
Для этого число в ячейке может быть дробным.
Например, 46454 обозначает просто 8 марта 2027 года, а 46454,5 — ровно 12:00 8 марта 2027 года.
Отображение даты и времени в ячейке
Отображение даты и времени в ячейке можно настроить как угодно — сделать только дату или только время или и то, и другое.
Формат отображения не влияет на сами данные
Например, если у вас отображались только даты, а потом вы переключились на отображение только времени, сами даты не теряются, потому что в ячейках по-прежнему хранятся те же самые числа.
- Нажмите на ячейку правой кнопкой.
- Выберите Формат числа → Короткая дата или Формат числа → Длинная дата (попробуйте оба).
- Нажмите на ячейку правой кнопкой.
- Выберите Формат числа → Время.
- Нажмите на ячейку правой кнопкой.
- Выберите Формат числа → Дата и время.
Как использовать на практике
Как ввести дату
Самый простой способ
Самый простой способ ввести дату — просто набрать ее в ячейке, указывая месяц цифрой. Например, сработают такие варианты:
- 11.03.2027
- 11.03
- 11/03/2027
Любую из таких строк Таблицы автоматически превратят в дату.
А если я не хочу, чтобы моя строка стала датой?
Тогда перед вводом выберите для ячейки текстовый формат. Когда данные вводятся в ячейку с таким форматом, Таблицы не применяют к ним никаких преобразований.
Такой способ ввода даты самый простой и быстрый, но у него есть минус — результат преобразования может оказаться не таким, как вы ожидаете. Например:
- последовательность записи дня и месяца зависит от региональных настроек системы;
- если в вашей строке не указан год, Таблицы подставят его автоматически.
Проверяйте результат, если вводите дату напрямую
Например, выставите формат отображения Длинная дата и убедитесь, что показанные даты верны.
Самый надежный способ
Вы можете не использовать автоматическое преобразование текста в дату, а просто по отдельности указать все ее оставляющие: год, месяц, день и, если нужно, часы, минуты и секунды.
Это делается с помощью функции ДАТА. Что такое функция
Эта функция принимает на вход три числа: год, номер месяца и номер дня. В ответ она возвращает готовую дату — то есть порядковый номер соответствующего дня.
=ДАТА(2027;12;10) → 10 декабря 2027 года
Если вы хотите указать на точный момент определенных суток, сложите вместе результаты функций ДАТА и ВРЕМЯ:
=ДАТА(2027;12;10) + ВРЕМЯ(18;32;10)
Что делать, если в ячейке сохранены данные о времени, но показывается только дата.
Нужно изменить формат ячейки. Нажмите на нее правой кнопкой мыши и выберите Формат числа → Дата и время.
Как получить текущую дату и время
Во многих случаях может быть полезно отталкиваться в расчетах от текущего дня: например, чтобы показать, сколько дней осталось до определенной даты.
Это можно сделать с помощью функций СЕГОДНЯ (возвращает только дату) и ТДАТА (возвращает дату и время).
Как пользоваться функциями, связанными с датой и временем
В Яндекс Таблицах есть множество функций, связанных с расчетами дат и времени. Они, например, умеют:
- формировать дату из исходных чисел или из строки;
- извлекать из даты номер года, месяца или дня;
- вычислять количество будних дней между датами;
- возвращать дату, являющуюся концом следующего месяца.
Вот о чем нужно помнить, используя такие функции:
- Если функция возвращает дату, она возвращает ее в числовом формате, описанном в этой статье;
- Если функция принимает дату в качестве аргумента (например, чтобы прибавить к ней пять месяцев), обязательно передавайте эту дату в том же числовом формате.
Используйте в формулах только числовой формат даты
Такой формат аргумента минимизирует вероятность ошибок при составлении формулы.
✅ =ДЕНЬ(ДАТА(2027;12;10))
✅ =ДЕНЬ(46731)
❌ =ДЕНЬ("10.дек")
❌ =ДЕНЬ("10.12.2027")