
Generisk formel
=IF(A1>=start,(MOD(DATEDIF(start,A1,"m")+n,n)=0)*value,0)
Resumé
For at gentage en fast værdi hver 3. måned kan du bruge en formel baseret på funktionerne DATEDIF og MOD. I det viste eksempel er formlen i C4, kopieret ned,:
=IF(B4>=start,(MOD(DATEDIF(start,B4,"m")+n,n)=0)*value,0)
hvor "start" er det navngivne område F6, "n" er F4, og "værdi" er F5.
Forklaring
Den første ting, denne formel gør, er at kontrollere datoen i kolonne B mod startdatoen:
=IF(B4>=start
Hvis datoen ikke er større end startdatoen, returnerer formlen nul. Hvis datoen er større end eller lig med startdatoen, kører IF-funktionen dette uddrag:
(MOD(DATEDIF(start,B4,"m")+n,n)=0)*value
Inden i MOD bruges DATEDIF-funktionen til at få antallet af måneder mellem startdatoen og datoen i B4. Når datoen i B4 er lig med startdatoen, returnerer DATEDIF nul. I den næste måned returnerer DATEDIF 1 osv.
Til dette resultat tilføjer vi værdien for det navngivne interval "n", som er 3 i eksemplet. Dette starter effektivt nummereringsmønsteret ved 3 i stedet for nul.
MOD-funktionen bruges til at kontrollere hver værdi, med n som skillevæg:
MOD(DATEDIF(start,B4,"m")+n,n)=0
Hvis resten er nul, arbejder vi med en måned, der kræver en værdi. I stedet for at indlejre en anden IF-funktion bruger vi boolsk logik til at multiplicere resultatet af udtrykket ovenfor med "værdi".
I måneder, hvor der skal være en værdi, returnerer MOD nul, udtrykket er SAND, og værdien returneres. I andre måneder returnerer MOD et resultat, der ikke er nul, udtrykket er FALSK, og værdien tvinges til nul.