Excel и Google Workspace / Базовые формулы Excel

YEARFRAC / ДОЛЯГОДА: доля года между двумя датами

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

Опубликовано: Обновлено:

Формула

$$=YEARFRAC(A2,B2,1)$$

Обозначения

$A2$
начальная дата периода, дата
$B2$
конечная дата периода, дата
$1$
базис фактических дней в фактическом году, код
$YEARFRAC$
английское имя функции; в русской локализации Excel - ДОЛЯГОДА

Условия применения

  • Обе даты должны быть настоящими датами таблицы.
  • Базис выбирают осознанно: 0, 1, 2, 3 или 4.
  • Начальная и конечная дата задают один период.
  • Разделители аргументов зависят от локали.

Ограничения

  • YEARFRAC не заменяет юридические правила стажа или процентов.
  • Разные basis дают разные результаты.
  • Текстовые даты могут преобразоваться неверно.

Подробное объяснение

YEARFRAC измеряет промежуток между датами в долях года. Если прошла половина года, результат около 0,5; если полтора года - около 1,5.

Третий аргумент basis определяет day count convention. Basis 1 использует фактические дни в фактическом году, basis 3 делит фактические дни на 365, а basis 0 использует схему 30/360.

Функция пропорциональна длительности периода, но календарь неравномерен. Високосный год и выбранный базис могут немного изменить итог.

В моделях YEARFRAC часто умножают на сумму и годовую ставку: проценты = сумма * ставка * доля года. Так период можно проверить отдельно.

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

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

Как пользоваться формулой

  1. Проверьте, что начальная и конечная даты распознаны как даты.
  2. Определите нужный базис подсчета дней.
  3. Введите =YEARFRAC(start_date,end_date,basis).
  4. Используйте результат как множитель к годовой ставке или норме.
  5. Сравните результат с грубой оценкой в днях.

Историческая справка

Функции доли года пришли из финансовой математики, где проценты, купоны и доходность считают за неполные периоды. Разные рынки использовали разные правила day count, и Excel дал им формульную реализацию. Электронные таблицы сделали такие операции массовыми: пользователь задает правило один раз, а файл пересчитывает результат при изменении исходных данных. В современных версиях Excel и Google Таблиц важны не только имя функции, но и локаль, разделители аргументов, тип данных в ячейках и совместимость динамических массивов. Поэтому хорошая формула должна быть проверяемой: рядом должны быть исходные данные, понятная единица результата и тест на крайний случай. Такой подход превращает отдельную функцию в надежный прием офисной модели. По мере развития Excel эти функции стали частью обычной грамотности работы с таблицами: они уменьшают ручные операции, делают файл воспроизводимым и позволяют передавать расчет другому пользователю без устных пояснений.

Пример

Дано: A2 = 01.01.2024, B2 = 01.07.2024. Формула периода: =YEARFRAC(A2,B2,1). В 2024 году 366 дней, между датами 182 дня, поэтому результат примерно 182/366=0,4973. Ответ: прошло около 0,497 года. Проверка: период почти равен половине високосного года, поэтому результат чуть меньше 0,5. Дополнительная проверка: измените одно исходное значение и убедитесь, что результат пересчитался именно так, как ожидается. Затем проверьте крайний случай: пустую ячейку, дату на границе периода, занятую область разлива или адрес с пробелом. Если формула копируется вниз, посмотрите две соседние строки и убедитесь, что относительные ссылки сместились, а фиксированные параметры остались на месте. Такой мини-тест занимает меньше минуты и обычно ловит ошибки локали, типов данных и неполных диапазонов.

Частая ошибка

Главная ошибка - не указывать basis и не понимать правило по умолчанию. Еще YEARFRAC применяют к текстовым датам или воспринимают 0,25 как 25 денежных единиц, хотя это четверть года. DATEDIF возвращает целые интервалы, а YEARFRAC - дробную длительность; эти функции нельзя заменять друг другом без проверки смысла. Отдельно проверьте локаль: формула из англоязычной инструкции может требовать замены запятых на точки с запятой, а локализованное имя функции может отличаться. Не смешивайте текстовые даты, числа как текст и настоящие числовые значения в одном расчете.

Практика

Задачи с решением

Basis 3

Условие. С 01.01.2025 до 02.07.2025 прошло 182 дня. Какую долю даст basis 3?

Решение. Basis 3 делит дни на 365: 182/365=0,4986.

Ответ. 0,499

Проценты

Условие. Сумма в C2, ставка в D2, даты в A2:B2. Как посчитать проценты?

Решение. =C2*D2*YEARFRAC(A2,B2,1).

Ответ. =C2*D2*YEARFRAC(A2,B2,1)

Дополнительные источники

  • Microsoft Support: Excel functions by category — https://support.microsoft.com/office/excel-functions-by-category-5f91f4e9-7b42-46d2-9bd1-63f26a86c0eb
  • Microsoft Support: Excel functions alphabetical — https://support.microsoft.com/office/excel-functions-alphabetical-b3944572-255d-4efb-bb96-c6d90033e188
  • Microsoft Support: Overview of formulas in Excel — https://support.microsoft.com/office/overview-of-formulas-in-excel-ecfdc708-9162-49e8-b993-c311f47ca173
  • Microsoft Support: YEARFRAC function — https://support.microsoft.com/office/yearfrac-function-3844141e-c76d-4143-82b6-208454ddc6a8

Связанные формулы

Excel и Google Workspace

Разница между датами в Excel и Google Таблицах

$=B2-A2$

Разницу между двумя датами в днях можно найти обычным вычитанием: из конечной даты вычитают начальную. Таблицы хранят даты как числовые значения, поэтому такая формула работает напрямую.

Excel и Google Workspace

YEAR / ГОД: год из даты в Excel и Google Таблицах

$=YEAR(A2)$

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

Excel и Google Workspace

MONTH / МЕСЯЦ: месяц из даты в Excel и Google Таблицах

$=MONTH(A2)$

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

Excel и Google Workspace

EDATE / ДАТАМЕС: дата через N месяцев в Excel и Google Таблицах

$=EDATE(A2,3)$

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