
Генеричка формула
=IF(A1>=start,(MOD(DATEDIF(start,A1,"m")+n,n)=0)*value,0)
Резиме
Да бисте понављали фиксну вредност свака 3 месеца, можете користити формулу засновану на функцијама ДАТЕДИФ и МОД. У приказаном примеру, формула у Ц4, копирана доле, је:
=IF(B4>=start,(MOD(DATEDIF(start,B4,"m")+n,n)=0)*value,0)
где је „старт“ именовани опсег Ф6, „н“ је Ф4, а „вредност“ је Ф5.
Објашњење
Прва ствар коју ова формула ради је да провери датум у колони Б према датуму почетка:
=IF(B4>=start
Ако датум није већи од датума почетка, формула враћа нулу. Ако је датум већи или једнак датуму почетка, функција ИФ покреће овај исечак:
(MOD(DATEDIF(start,B4,"m")+n,n)=0)*value
Унутар МОД-а, функција ДАТЕДИФ се користи за добијање броја месеци између датума почетка и датума у Б4. Када је датум у Б4 једнак датуму почетка, ДАТЕДИФ враћа нулу. Следећег месеца ДАТЕДИФ враћа 1 и тако даље.
Овом резултату додајемо вредност за именовани опсег „н“, што је 3 у примеру. Ово ефикасно започиње образац нумерисања на 3 уместо на нули.
Функција МОД се користи за проверу сваке вредности, са н-ом као делиоцем:
MOD(DATEDIF(start,B4,"m")+n,n)=0
Ако је остатак нула, радимо са месецом који захтева вредност. Уместо да угнездимо другу функцију ИФ, користимо логичку логику за помножавање резултата горњег израза са „вредност“.
У месецима када би требало да постоји вредност, МОД враћа нулу, израз је ТАЧНО, а вредност се враћа. У осталим месецима МОД враћа резултат који није нула, израз је ФАЛСЕ, а вредност је приморана на нулу.