Некоторые даты признаны датами, некоторые даты не признаны. Зачем? - PullRequest
22 голосов
/ 11 января 2011

Вот список дат:

04-22-11
12-19-11
11-04-11
12-08-11
09-27-11
09-27-11
04-01-11

Когда вы копируете этот список в Excel, некоторые из них распознаются как даты, а другие нет, следующим образом:

04-22-11
12-19-11
11-04-11 (дата)
12-08-11 (дата)
09-27-11
09-27-11
04-01-11 (дата)

Кто-нибудь знает почему?И как заставить Excel распознавать все элементы списка как даты?

Большое спасибо!

Ответы [ 10 ]

34 голосов
/ 21 августа 2013

Это не так сложно ...

Проверьте это сообщение на форуме:

http://www.pcreview.co.uk/forums/excel-not-recognizing-dates-dates-t3139469.html

Коротко о шагах:

  1. Выбрать только столбец «даты»
  2. Нажмите Данные> Текст в столбцы
  3. Нажмите Далее
  4. Нажмите Далее
  5. На шаге 3 мастера отметьте «Дата» в поле «Формат данных Col», затем выберите «DMY» из выпадающего списка.
  6. Нажмите Готово
6 голосов
/ 22 августа 2013

Это вызвано региональными настройками вашего компьютера.

Когда вы вставляете данные в Excel, это всего лишь набор строк (не даты).

В Excel есть логикараспознавать ваши текущие форматы данных, а также несколько похожих форматов даты или очевидных форматов даты, где можно предположить, что это дата.Когда он сможет сопоставить введенные вами данные с действительной датой, он отформатирует ее как дату в ячейке, в которой он находится.

Ваш конкретный пример связан с тем, что список дат отформатирован как "m/ d / yy ", который является форматом США.он вставляется правильно в моем Excel, потому что мои региональные настройки установлены на «Американский английский» (даже если я канадский :))

Если ваша система настроена на канадский английский / французский формат, то она будет ожидать »d / m / yy "форматировать и не распознавать любую дату, где месяц> 13 *.

. Лучший способ импортировать данные, содержащие даты, в Excel - это скопировать их в этом формате.

2011-04-22
2011-12-19
2011-11-04
2011-12-08
2011-09-27
2011-09-27
2011-04-01

Что означает «гггг-ММ-дд», этот формат распознается одинаково на всех компьютерах, которые я когда-либо видел (часто называют форматом ODBC или стандартным форматом), где единицы измерения всегда от наибольших к наименьшимвес ("гггг-мм-дд чч: мм: сс.ффф") другой побочный эффект - это правильная сортировка в виде строки.

Чтобы не менять местами региональные настройки, вы можете написать макросв Excel для вставки данных в простой всплывающий формат и некоторую базовую логику для переформатирования дат не составит труда.

5 голосов
/ 11 января 2011

В вашем случае он, вероятно, принимает их в формате DD-MM-YY, а не MM-DD-YY.

2 голосов
/ 10 сентября 2013

Самый быстрый и простой способ исправить это - найти и заменить в вашем разделителе даты тот же разделитель.Например, в этом случае найдите «-» и замените на «-», не уверен, почему это работает, но вы увидите, что все даты выровнены по правому краю, как и должно быть после этого.

1 голос
/ 12 апреля 2017

Вот что у меня сработало в формате мм / дд / гггг:

=DATE(VALUE(RIGHT(A1,4)),VALUE(LEFT(A1,2)),VALUE(MID(A1,4,2)))

Преобразуйте ячейку с формулой в формат даты и перетащите формулу вниз.

1 голос
/ 06 ноября 2015

Вот что у меня сработало.Я выделил колонку со всеми моими датами.На вкладке «Данные» я выбрал «текст в столбцы» и выбрал «Разграничить», я нажимаю «Далее» и заканчиваю.Несмотря на то, что ничего не изменилось, Excel теперь считал столбец как даты, и я смог отсортировать по датам.

0 голосов
/ 22 марта 2019

Я столкнулся с этой проблемой, когда пытался конвертировать в австралийский формат даты в Excel.Я разделил ячейку с разделителем и использовал следующий код из разделенных ячеек, затем изменил проблемные области.

=date(dd,mm,yy)
0 голосов
/ 07 марта 2016

Самое простое решение - поместить yy, mm, dd в формулу date(), сначала извлекая их с помощью left(), mid() и right().В этом случае предполагается, что введенная вами дата указана в формате A1:

=date(right(A1,2)+100,left(A1,2),mid(A1,4,2))

Объяснение выше:

=right(A1,2) получает последние две цифры в ячейке (гг).Мы добавляем 100, потому что по умолчанию это 1911 вместо 2011 (пропустите +100, если у вас это не так)

=left(A1,2) получает первые две цифры в ячейке (мм).

=mid(A1,4,2) получает 2 цифры в середине ячейки, начиная с 4-й цифры (dd).

Почему это происходит в первую очередь:

Я прихожучерез эту проблему все время, когда я импортирую данные канадских банков в Excel.Короче говоря, введенный вами формат даты не соответствует вашим региональным настройкам.

Кажется, ваши настройки означают, что Excel требует ввода даты в формате ДД-ММ-ГГ или ГГ-ММ-ДД, но ваши входные данные отформатированы в формате ММ-ДД-ГГ.

Итак, превосходнорассматривает ваши дни как месяцы и наоборот, что означает, что любая дата с днем ​​ниже 12 будет распознана как дата, НО НЕПРАВИЛЬНАЯ ДАТА (месяц и день поменялись местами), а любая дата с днем ​​выше 12 не будет признана как датавообще, потому что Excel видит день как 13-й + месяц.

К сожалению, вы не можете просто изменить форматирование, потому что Excel уже заблокировал эти назначения дня / месяца на месте, и вы в итоге просто перемещаетеExcel ДУМАЕТ визуально дни и месяцы, а не переназначает их.

Честно говоря, меня удивляет, что в Excel нет инструмента для изменения даты, потому что я думаю, что это происходит постоянно.Но приведенная выше формула делает это довольно просто.

ПРИМЕЧАНИЕ: если у ваших дат нет начальных нулей (то есть 4/8/11 против 04/08/12), это становится сложнее, потому что вы должны извлекать различные суммыцифр в зависимости от даты (т.е. 4/9/11 против 4/10/11).Затем вы должны построить пару операторов if в вашей формуле.Гросс.

0 голосов
/ 02 мая 2011

Обходной путь для этой проблемы заключается во временном изменении региональных настроек, поэтому формат даты импортированного файла CSV «совпадает» с региональными настройками.

Похоже, что Open Office работает аналогичным образом, см .: http://www.oooforum.org/forum/viewtopic.phtml?t=85898

0 голосов
/ 11 января 2011

Щелкните правой кнопкой мыши заголовок столбца и выберите «Формат ячеек», выберите «Дата» и выберите нужный формат даты.Те, которые не распознаны, являются неоднозначными, и как таковые не интерпретируются как что-либо, но это разрешается после применения форматирования к столбцу.Обратите внимание, что для меня в Excel 2002 SP3 даты, указанные выше, автоматически и правильно интерпретируются как даты при вставке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...