Excel vzorec: Opakujte pevnú hodnotu každé 3 mesiace

Všeobecný vzorec

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

Zhrnutie

Ak chcete opakovať pevnú hodnotu každé 3 mesiace, môžete použiť vzorec založený na funkciách DATEDIF a MOD. V zobrazenom príklade je vzorec v C4, skopírovaný nadol,:

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

kde „štart“ je pomenovaný rozsah F6, „n“ je F4 a „hodnota“ je F5.

Vysvetlenie

Prvá vec, ktorú tento vzorec urobí, je skontrolovať dátum v stĺpci B oproti dátumu začatia:

=IF(B4>=start

Ak dátum nie je väčší ako dátum začatia, vzorec vráti nulu. Ak je dátum väčší alebo rovnaký ako počiatočný dátum, funkcia IF spustí tento úryvok:

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

Vo vnútri MOD sa funkcia DATEDIF používa na získanie počtu mesiacov medzi dátumom začatia a dátumom v B4. Keď sa dátum v B4 rovná počiatočnému dátumu, DATEDIF vráti nulu. Nasledujúci mesiac vráti DATEDIF 1 atď.

K tomuto výsledku pridáme hodnotu pre pomenovaný rozsah „n“, ktorý je v príklade 3. Týmto sa efektívne začne vzor číslovania 3 namiesto nuly.

Funkcia MOD sa používa na kontrolu každej hodnoty, pričom n je deliteľ:

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

Ak je zvyšok nula, pracujeme s mesiacom, ktorý vyžaduje hodnotu. Namiesto vnorenia inej funkcie IF použijeme logickú logiku na vynásobenie výsledku výrazu vyššie hodnotou „value“.

V mesiacoch, kde by mala byť hodnota, MOD vráti nulu, výraz má hodnotu TRUE a hodnota sa vráti. V ostatných mesiacoch MOD vráti nenulový výsledok, výraz je FALSE a hodnota je vynútená na nulu.

Zaujímavé články...