У меня есть столбец дат в следующем формате ddd mmm dd hh m:s "EST" yyyy
. В другой ячейке на другом листе я хочу иметь даты в формате dd/m/y
. Как это сделать?
Я уже пробовал DATEVALUE
функцию. Поскольку позиции фиксированы, я начал использовать функции RIGHT
и MID
для извлечения компонентов, которые нужно поместить в функцию ДАТА. К сожалению, я не знаю способа преобразовать трехбуквенную строку в месяц без написания огромного блока if.
ОБНОВЛЕНИЕ: Мне удалось преобразовать строку с помощью MONTH(1&THREE_LETTER_DATE). Мне все еще интересно, есть ли лучшее решение
решение1
Это одна из тех неприятностей Excel. Исходные данные — даже если они выглядят как тип Date — могут быть не типом Date, а Text.
Воссоздание этой проблемы:
- Создать новый лист
- выберите ячейку
- изменить тип данных на Текст
- введите в ту же ячейку: «3343423» (только цифры), нажмите Enter
- меняем тип данных ячейки обратно на Число => Ничего не происходит!
- выберите ячейку, нажмите F2, нажмите Enter => вуаля! Теперь это число.
Теперь вернемся к первоначальному вопросу:
Скажем, если ячейка A1 — это исходные данные (а ячейка A2 пуста), сначала убедитесь, что тип ячейки A1 установлен на «Данные», формат — «Пользовательский», а пользовательский формат описывает именно исходные данные. (Вы можете попробовать сделать наоборот. Попробуйте установить текущую дату в ячейке в соответствии с вашим пользовательским форматом, пока результат не будет удовлетворительным).
Если A1 выглядит нормально, то установите A2 на «=A1», затем снова щелкните на A1, нажмите F2 (редактировать) и нажмите Enter.
решение2
Для этого нет необходимости использовать формулу, просто используйте параметры формата ячеек. (То есть скопируйте нужные даты — как значения или как ссылки, — а затем отформатируйте ячейки назначения как дд/м/г.)