Увеличение числа месяцев в датах (Microsoft Excel)
У Хирен есть серия дат на листе. Он хотел бы увеличить месяц, чтобы (например) август стал сентябрем в датах.
Он задается вопросом, можно ли это сделать с помощью функции «Найти и заменить».
На самом деле вы можете использовать «Найти и заменить», чтобы внести изменения. Например, предположим, что дата, показанная в диапазоне ячеек, — с 01.08.19 по 31.08.19. Вы можете выполнить поиск по запросу «8 /» (без кавычек) и заменить его на «9 /» (опять же, без кавычек).
Однако у этого подхода есть несколько проблем. Во-первых, вы в конечном итоге внесете изменения, которые, вероятно, не хотите вносить. Например, 18/19/19 изменено на 19/9/19, потому что в исходном значении есть два экземпляра 8 /. Во-вторых, когда вы изменяете 31.08.19 на 31.09.19, Excel обрабатывает преобразованную дату как текст, а не как дату, потому что 31.09 не является допустимой датой. Кроме того, вам нужно будет изменить то, что вы ищете, и заменить, в зависимости от того, как дата отформатирована в ячейках.
Лучшее решение — использовать формулу для увеличения. Для этой цели вы хотите использовать функцию EDATE, как показано здесь:
=EDATE(A1,1)
Формула отлично подходит для увеличения месяца. Вам нужно понять, как работает функция, когда в результате увеличения месяца получается недопустимая дата. Например, если исходная дата — 31.08.19, и вы используете формулу, она вернет 30.09.19, последний действительный день сентября.
Если вы хотите вместо этого видеть ошибку при попытке увеличения, то формулу можно скорректировать для компенсации:
=IF(DAY(EDATE(A1,1))<DAY(A1),NA(),EDATE(A1,1))
Эта формула сравнивает дату преобразованной даты с днем исходной даты, и если они не совпадают, возвращается ошибка # N / A.
Если вместо этого вы хотите, чтобы недопустимая дата «перенеслась» на следующий месяц (так, чтобы 31.08.19 при увеличении превратилось в 10.01.19), вы можете использовать другую формулу, которая не полагаться на EDATE:
=DATE(YEAR(A1),MONTH(A1)+1,DAY(A1))
Что интересно, эта формула будет правильно обрабатывать «конец года». Таким образом, исходная дата в формате A1 от 01.12.19 станет 13.01.19, что переводится Excel как 01.01.20.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (9265) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Incrementing_Months_in_Dates [Увеличение месяцев в датах]
.