Vrátiť dátum na konci mesiaca - tipy pre Excel

Obsah

Tony napísal otázku, ktorá vyzerá jednoducho, ale vyžaduje pomerne zložitý vzorec:

Bežím program Excel 97 a chcem, aby niektoré bunky s formátom dátumu v stĺpci „K“ vrátili dátum, ktorý je koncom mesiaca, keď do „G“ zadám ktorýkoľvek deň daného mesiaca. Vyskúšal som EMONTH zo staršej verzie programu Excel, ale v tejto verzii som ho nedostal do práce.

Existuje niekoľko spôsobov, ako vyriešiť veľa problémov v programe Excel. Som si istý, že niekto príde s niečím jednoduchším, ale momentálne mi napadne tento vzorec:

=DATE(YEAR(E1),1+MONTH(E1),1)-1

Funkcia DATE () vo všeobecnosti akceptuje tri argumenty: rok, mesiac a deň. Takže 13. Decembra 2001 bolo možné zadať ako =DATE(2001,12,13).

Funkcia dátumu je tiež pomerne zhovievavá. Ak zadáte neplatný počet mesiacov, napríklad 13, bude uvedený správny dátum. =DATE(2001,13,1)bude 1. januára 2002. Vďaka tomu je vynikajúcou funkciou, keď potrebujete pridať alebo odčítať aktuálny dátum.

Pri riešení tohto problému je jednoduchšie nájsť prvý deň nasledujúceho mesiaca a potom jeden deň odčítať. Je to jednoduchšie, pretože vieme, že denná časť prvého nasledujúceho mesiaca je vždy 1. Zatiaľ čo keby ste sa pokúsili nájsť posledný deň tohto mesiaca, museli by ste skontrolovať priestupné roky atď. - všeobecne by to bolo neporiadok.

Ak máte dátum v E1, potom ROK (E1) vráti ročnú časť dátumu. Mesiac (E1) +1 vráti mesačnú časť dátumu a posunie ju na nasledujúci mesiac. Posledný argument, jednotka 1, vyberie prvý deň nasledujúceho mesiaca. Potom nakoniec od tohto dátumu odpočítam jeden, aby som previedol 1. 1. 2002 na 31. 12. 2001.

Aktualizácia

Ďakujem Stevovi H. za túto odpoveď z krabice. Je neobvyklé považovať „0“ za mesiac, ale funguje to!

=DATE(YEAR(E1),1+MONTH(E1),0)

Zaujímavé články...