Преобразование закодированных дат в реальные (Microsoft Excel)
Луис получает даты в формате «04A09», где первые две цифры — это день, буква в середине — это месяц (A — январь, B — февраль, C — март и т. Д.), А последние две цифры — это год. Ему нужно преобразовать эти закодированные даты в обычные значения даты, с которыми он сможет работать в Excel.
Самая большая вещь, которая делает этот формат даты нестандартным, — это использование буквенного символа для месяца. Итак, первое, что нужно сделать, — это выяснить, как преобразовать этот символ в числовой месяц. Здесь может оказаться полезной функция CODE; он возвращает код ASCII для символа. Буква A возвращает значение 65, B возвращает 66 и так далее. Итак, все, что вам нужно сделать, чтобы преобразовать буквы в числа от 1 до 12, это использовать что-то вроде этого:
=CODE(UPPER(MID(A1,3,1)))-64
Функция UPPER используется для преобразования символа месяца в верхний регистр, на тот случай, если код позволяет использовать строчные буквы для месяцев.
Другой способ конвертировать месяцы — использовать функцию НАЙТИ следующим образом:
=FIND(UPPER(MID(A1,3,1)),"ABCDEFGHIJKL",1)
Этот метод находит символ в алфавитной строке и возвращает смещение в этой строке от 1 до 12.
Любой из методов преобразования месяцев можно затем использовать внутри функции DATE для возврата даты на основе года, месяца и дня. В этом примере используется метод CODE, но вы также можете легко использовать метод FIND:
=DATE(2000+RIGHT(A1,2),CODE(UPPER(MID(A1,3,1)))-64,LEFT(A1,2))
Если существует вероятность того, что закодированные даты могут включать некоторые даты до 2000 года, то использование функции DATEVALUE для сложения даты даст более точные результаты:
=DATEVALUE(CODE(UPPER(MID(A1,3,1)))-64&"/"&LEFT(A1,2)&"/"&RIGHT(A1,2))
Если вы используете подход DATEVALUE, имейте в виду, что формула возвращает порядковый номер даты и что вам нужно будет отформатировать ячейку для отображения даты в том виде, в каком вы хотите ее отображать.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (7163) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и более поздних версий) здесь:
link: / excelribbon-Converting_Coded_Dates_into_Real_Dates [Преобразование закодированных дат в реальные]
.