Връщане на края на месеца - Съвети на Excel

Съдържание

Тони пише с въпрос, който изглежда прост, но изисква доста сложна формула:

Изпълнявам Excel 97 и искам някои от форматираните с дата клетки в колона „K“ да връщат дата, която е в края на месеца, когато въвеждам всеки ден от този месец в „G“. Опитах EMONTH от ранна версия на Excel, но не съм успял да работи в тази версия.

Има няколко начина за решаване на много проблеми в Excel. Сигурен съм, че някой ще измисли нещо по-просто, но в момента ми идва на ум тази формула:

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

Функцията DATE () обикновено приема три аргумента: Година, месец и ден. И така, 13 декември 2001 г. може да бъде въведен като =DATE(2001,12,13).

Функцията за дата също е доста прощаваща. Ако посочите невалиден брой месеци, като например 13, той ще даде правилната дата. =DATE(2001,13,1)ще бъде 1 януари 2002 г. Това го прави чудесна функция, когато трябва да добавите или извадите към текущата дата.

При решаването на този проблем е по-лесно да намерите първия ден на следващия месец и след това да извадите един ден. Това е по-лесно, защото знаем, че дневната част на първия от следващия месец е винаги 1. Докато, ако се опитате да намерите последния ден от този месец, ще трябва да проверите за високосна година и т.н. - това обикновено би било бъркотия.

Ако имате дата в E1, тогава YEAR (E1) ще върне годишната част от датата. Месец (E1) +1 ще върне месечната част от датата и ще я премине към следващия месец. Последният аргумент, 1 ще избере първия ден от следващия месец. След това накрая изваждам една от тази дата, за да конвертирам 1/1/2002 в 31/12/2001.

Актуализиране

Благодарим на Стив Х. за този нестандартен отговор. Необичайно е да се смята „0-тото“ от месеца, но работи!

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

Интересни статии...