Повернення дати кінця місяця - Поради 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) поверне річну частину дати. Month (E1) +1 поверне місячну частину дати та перенесе її на наступний місяць. Остаточний аргумент, 1, вибере перший день наступного місяця. Потім, нарешті, я віднімаю одну з цієї дати, щоб перетворити 1/1/2002 на 31/12/2001.

Оновлення

Дякую Стіву Х. за цю нестандартну відповідь. Незвично вважати "0-е число" місяця, але це працює!

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

Цікаві статті...