Excel: рассчитать количество платежей по кредиту между двумя датами

Excel: рассчитать количество платежей по кредиту между двумя датами

У меня проблема, с которой мне нужна помощь. У меня есть две даты для кредита: текущая дата и дата погашения. У меня также есть информация о том, в какой день месяца/квартала/года будет переведен платеж. Итак, вопрос: как мне рассчитать количество платежей между двумя датами, если у кредитов разные графики платежей. Например:

Текущая дата: 2.12.2020 Срок погашения: 15.6.2021 День платежа: 20-е Платежи в году: 12

Таким образом, результат будет: 6 (декабрь, январь, февраль, март, апрель, май)

Пример 2:

Текущая дата: 2.12.2020 Срок погашения: 15.6.2021 День платежа: 20-е число Платежи в году: 4 (т.е. ежеквартально)

Результат: 2 (январь, апрель)

Должен ли я использовать какой-то цикл VBA или что-то еще?

решение1

использовать:

=SUMPRODUCT((DAY(ROW(INDEX($ZZ:$ZZ,A1):INDEX($ZZ:$ZZ,B1)))=C1)*(MOD(MONTH(ROW(INDEX($ZZ:$ZZ,A1):INDEX($ZZ:$ZZ,B1)))-1,12/D1)=0))

Он перебирает дни и проверяет, соответствуют ли они требованиям, а затем суммирует их там, где они совпадают.

введите описание изображения здесь

Если у вас есть Office 365, то мы можем сократить его с помощью LET и SQUENCE:

=LET(dts,SEQUENCE(B1-A1+1,,A1),SUMPRODUCT((DAY(dts)=C1)*(MOD(MONTH(dts)-1,12/D1)=0)))

или:

=LET(dts,SEQUENCE(,B1-A1+1,A1),COUNT(FILTER(dts,(DAY(dts)=C1)*(MOD(MONTH(dts)-1,12/D1)=0))))

Связанный контент