Функции и формулы для преобразования номера в название месяца

Время от времени возникает необходимость изменить порядковый номер месяца на название и наоборот (например, 3 на «Март» или «Октябрь» на 10).

Сначала рассмотрим, каким способом изменить номер месяца его название. А после речь пойдет о том, как выполнить обратный процесс, то есть изменить название на соответствующий ему порядковый номер.

Изменение порядкового номера месяца на его название в Excel

Первый способ, который пришел мне на ум, это просто составить список ячеек с последовательными названиями месяцев, а затем использовать функцию:

=ИНДЕКС($A$2:$A$13;B2)

где $A$2:$A$13 – это, конечно, диапазон с названиями месяцев, а B2 - ячейка с порядковым номером в году, для которого мы ищем его название.

Пример 1.

По схожему принципу с функцией ИНДЕКС работает другая функция, которую вы можете использовать - ВЫБОР. Разница состоит в том, что она не использует ячейки листа, в которых хранятся названия месяцев. Названия месяцев просто даем в качестве аргумента функции.

Функция ВЫБОР принимает в качестве аргументов номер индекса (который определяет какой из элементов в списке значений вернуть в качестве результата) и список значений. Интересующиеся подробностями, конечно же, могут скачать файл с примерами.

Если в качестве списка значений указать названия месяцев (по очередности), а в качестве индекса - ячейку с номером месяца, то функция вернет соответствующее ему название для каждого заданного числа.

ВЫБОР.

Вариант2 автономный и более удобный для использования формулы на разных листах или рабочих книга без применения внешних ссылок.



Примеры как получить название месяца из даты в Excel

Подобно тому как показано выше, в случае, когда необходимо "вытянуть" название месяца из даты, необходимо воспользоваться помощью функции МЕСЯЦ.

Если у вас есть список с датами и нужно «вытянуть» из них название месяцев, то функция ИНДЕКС в приведенном выше виде выдаст ошибку. Если вы хотите, чтобы формула работала правильно, необходимо при помощи функции МЕСЯЦ "вытянуть" номер месяца из ячейки с датой. Формула будет выглядеть следующим образом:

=ИНДЕКС($A$2:$A$13;МЕСЯЦ(E2))

по дате.

Еще один способ (возможно, самый удобный) - использовать функцию ТЕКСТ (все, что делает функция ТЕКСТ, это преобразует числовое значение в текст с соответствующим форматированием).

Если у вас есть список с датами и нужно «вытянуть» из них название месяцев, просто введите:

=ТЕКСТ(E2;"mmmm")

где E2 – это, конечно, ячейка с датой.

ИНДЕКС.

Если вы работаете только с числами (1-12), функция в приведенной выше форме будет работать неправильно. Вы должны помнить, что число 1 для Excelя это 1 января 1900 года, число 2 - 2 января 1900 года и так далее. Это все тот же месяц - январь. Поэтому ТЕКСТ(E2;"ММММ") возвращает «Январь» для каждого номера месяца.

Однако вы можете легко изменить последовательные числа на номера месяцев. Например, вы можете умножить каждое число на среднее количество дней в месяце (30).

Формула функции:

=ТЕКСТ(B2*30;"mmmm")

ТЕКСТ.

будет работать правильно, и в качестве результата вернет названия месяцев.

Как преобразовать название месяца в порядковый номер

Теперь будем преобразовывать обратно – имя месяца в соответствующий ему порядковый номер в году.

Пример1. Формула первая:

=МЕСЯЦ(ДАТАЗНАЧ(A2&"1"))

получить название месяца из даты.

Значение Декабрь1 Excel автоматически преобразует в дату дек.01. Далее функция ДАТАЗНАЧ преобразует дату в число после с помощью функции МЕСЯЦ мы получаем порядковый номер в году для текущего названия месяца. По сути формулу можно упростить:

=МЕСЯЦ(A2&"1")

Пример2. Формула вторая:

=ВПР(A2;$G$1:$H$12;2;0)

преобразовать название месяца в номер.

Пример3. Формула третья:

ВПР.

Наиболее оптимальным вариантом является лаконичная формула =МЕСЯЦ(A2&"1"). В ней не нужно резервировать названия месяцев и присваивать им соответственные порядковые номера. К тому же в ней используется всего лишь одна функция.


en ru