Grąžinti mėnesio pabaigos datą - „Excel“ patarimai

Turinys

Tonis parašė klausimą, kuris atrodo paprastas, tačiau reikalaujantis gana sudėtingos formulės:

Vykdau „Excel 97“ ir noriu, kad kai kurios iš datos suformuotų langelių „K“ stulpelyje pateiktų datą, kuri yra mėnesio pabaiga, kai „G“ įvedu bet kurią to mėnesio dieną. Išbandžiau „EMONTH“ nuo ankstyvosios „Excel“ versijos, bet nesupratau, kad ji veiktų šioje versijoje.

Yra keli būdai, kaip išspręsti daugelį „Excel“ problemų. Esu tikras, kad kažkas sugalvos ką nors paprastesnio, tačiau šiuo metu į galvą ateina ši formulė:

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

Funkcija DATE () paprastai priima tris argumentus: metus, mėnesį ir dieną. Taigi 2001 m. Gruodžio 13 d. Galima įrašyti kaip =DATE(2001,12,13).

Datos funkcija taip pat gana atlaidi. Jei nurodysite neteisingą mėnesių skaičių, pvz., 13, jis nurodys teisingą datą. =DATE(2001,13,1)sausio 1 d. Tai yra puiki funkcija, kai reikia pridėti arba atimti dabartinę datą.

Sprendžiant šią problemą, lengviau rasti kito mėnesio pirmą dieną ir tada atimti vieną dieną. Tai yra paprasčiau, nes žinome, kad kito mėnesio pirmosios dienos dalis visada yra 1. Tuo tarpu, jei bandytumėte rasti paskutinę šio mėnesio dieną, turėtumėte patikrinti keliamus metus ir pan. - paprastai tai būtų netvarka.

Jei turite datą E1, tada YEAR (E1) grąžins metų dalį. Mėnuo (E1) +1 grąžins mėnesio datos dalį ir perkels ją į kitą mėnesį. Paskutinis argumentas „1“ pasirinks kito mėnesio pirmą dieną. Tada pagaliau iš tos dienos atimu vieną, kad konvertučiau 2002-01-01 į 2001-12-31.

Atnaujinti

Ačiū Steve'ui H. už šį atsakymą. Neįprasta atsižvelgti į mėnesio „0-ąją“, bet tai veikia!

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

Įdomios straipsniai...