Формула Excel: повторять фиксированное значение каждые 3 месяца -

Содержание

Общая формула

=IF(A1>=start,(MOD(DATEDIF(start,A1,"m")+n,n)=0)*value,0)

Резюме

Чтобы повторять фиксированное значение каждые 3 месяца, вы можете использовать формулу, основанную на функциях РАЗНДАТ и МОД. В показанном примере формула в C4, скопированная, имеет следующий вид:

=IF(B4>=start,(MOD(DATEDIF(start,B4,"m")+n,n)=0)*value,0)

где «start» - именованный диапазон F6, «n» - F4, а «value» - F5.

Объяснение

Первое, что делает эта формула, - сравнивает дату в столбце B с датой начала:

=IF(B4>=start

Если дата не больше даты начала, формула возвращает ноль. Если дата больше или равна дате начала, функция IF запускает этот фрагмент:

(MOD(DATEDIF(start,B4,"m")+n,n)=0)*value

Внутри MOD функция РАЗНДАТ используется для получения количества месяцев между датой начала и датой в B4. Когда дата в B4 равна дате начала, РАЗНДАТ возвращает ноль. В следующем месяце РАЗНДАТ возвращает 1 и так далее.

К этому результату мы добавляем значение именованного диапазона «n», которое в примере равно 3. Это фактически запускает образец нумерации с 3 вместо нуля.

Функция MOD используется для проверки каждого значения с n в качестве делителя:

MOD(DATEDIF(start,B4,"m")+n,n)=0

Если остаток равен нулю, мы работаем с месяцем, для которого требуется значение. Вместо того, чтобы вкладывать другую функцию ЕСЛИ, мы используем логическую логику для умножения результата приведенного выше выражения на «значение».

В месяцах, когда должно быть значение, MOD возвращает ноль, выражение - ИСТИНА, и возвращается значение. В другие месяцы MOD возвращает ненулевой результат, выражение FALSE и значение принудительно обнуляется.

Интересные статьи...