Преобразование даты в формат Excel

Давайте попытаемся решить обратную задачу. Предположим, что элементы даты находятся в разных ячейках и записаны в следующем виде: месяц - прописью, а день месяца и год - числами. Элементы даты нужно соединить и представить в формате Excel. Алгоритм решения этой задачи показан на рис. 6.13.

Алгоритм составления даты из отдельных компонентов

Рис. 6.13. Алгоритм составления даты из отдельных компонентов

Входами таблицы являются ячейки А1 (год), А2 (число месяца) и A3 (название месяца), а выходом- ячейка А4. Она содержит дату в формате Excel. В диапазоне ячеек А5:А15 определяется номер месяца (рис. 6.14).

Таблица, которая из отдельных составляющих формирует дату в формате Excel

Рис. 6.14. Таблица, которая из отдельных составляющих формирует дату в формате Excel

Рассмотрим, как формируется номер месяца. Функция ЕСЛИ проверяет, совпадает ли значение в ячейке A3 с названием месяца, указанным в функции. Если совпадает, то выдается соответствующий месяцу порядковый номер. В противном случае осуществляется переход в ячейку, расположенную ниже. В этой ячейке выполняется аналогичная проверка. Переход к ячейке ниже происходит до тех пор, пока не будет найден месяц или не будет обнаружена ошибка в названии месяца. Таким образом, в ячейку А4 необходимо ввести следующую формулу:

=ЕСЛИ(А3="Январь";1;А5)

В первом аргументе функции ЕСЛИ содержимое ячейки A3 сравнивается с текстом Январь. Если они одинаковы, то функция возвращает значение 1 - первый месяц. В противном случае ячейка A3 будет содержать значение, находящееся в ячейке А5, адрес которой указан в третьем аргументе функции. Формула в ячейке А5 сравнивает значение ячейки A3 с текстом Февраль. Аналогичные формулы содержатся в ячейках по А1.4 включительно. В ячейке А15 расположена формула, которая несколько отличается от предыдущих:

=ЕСЛИ(А3="Декабрь";12;"Уточните месяц!")

Несовпадение значения в ячейке A3 со словом Декабрь означает, что месяц был введен неправильно. Поэтому в данном случае третьим аргументом является не адрес ячейки, а сообщение Уточните месяц!.

Для формирования даты из отдельных элементов в числовом формате воспользуемся функцией категории Дата и время - ДАТА. Поместите табличный курсор в ячейку А16 и вызовите панель функции ДАТА (рис. 6.15). Введите в поле Год ссылку на ячейку А1, где указан номер года, в поле Месяц - ссылку на ячейку А4, где определен номер месяца в году, а в поле День - ссылку на ячейку А2, где указан день месяца.

Панель функции ДАTА

Рис. 6.16. Панель функции ДАTА

Построив таблицу, методом вложения формул создайте модуль для формирования даты в формате Excel. Модуль можно разместить в диапазоне размером 5 ячеек (рис. 6.16).

Модуль для формирования из отдельных составляющих даты в формате Excel

Рис. 6.16. Модуль для формирования из отдельных составляющих даты в формате Excel

В ячейке А4 модуля должна содержаться такая формула:

=ДАТА(А1;ЕСЛИ(А3="Январь";1; ЕСЛИ(А3="Февраль";2 ; ЕСЛИ(А3="Март";3;ЕСЛИ(А3="Апрель";4;А5))));А2)

В ячейку А5, которая служит выходом модуля, занесите формулу, приведенную ниже:

=ЕСЛИ (А3="Май"; 5; ЕСЛИ(А3="Июнь"; 6; ЕСЛИ(А3="Июль"; 7; ЕСЛИ(А3="Август"; 8; ЕСЛИ(А3="Сентябрь";9; ЕСЛИ(А3="Октябрь";10; ЕСЛИ(А3="Ноябрь";11; ЕСЛИ(А3="Декабрь"; 12; "Уточните месяц! "))))))))