1

Я работаю с файлом Excel, где у меня есть некоторые значения в формате YYYYMMDD (т. 19970203 или February 3rd, 1997). Мне нужно было преобразовать эти значения в формат даты, который может прочитать Excel, что я и сделал, используя следующую функцию для столбца рядом с этими значениями:

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

Это выводит даты в виде dd-mm-yy (т. 03-02-97 , в предыдущем примере). Теперь мне нужно было упорядочить даты по месяцам, поэтому я попытался использовать функцию =month для этих новых значений в следующем столбце. Выход поступает в виде mm-01-00 .

В ходе исследования я обнаружил, что это форматирование было разрешено многими путем простого переформатирования ячеек, чтобы отображалось только значение mm даты. К сожалению, Excel теперь читает эти значения mm-01-00 как dd-mm-yy , и, что довольно интересно, это был январь за последние четыре года.

Я решил обходной путь для своих целей, избегая функции month и вместо этого используя текстовую функцию для дат, но я до сих пор не понял, что не так с использованием функции month. Я немного почитал, но не смог найти ни одного зарегистрированного случая подобных проблем. Следует отметить, что я запускаю Excel на компьютере с американскими региональными настройками, но дата отображается в dd-mm-yy . Однако я не понимаю, как это может иметь какое-либо отношение к моей проблеме с Excel.

2 ответа2

1

Excel сохраняет даты в виде последовательных серийных номеров, чтобы их можно было использовать в расчетах. Формат ячейки отображает серийный номер в виде даты, такой как 03-02-97 .

1 января 1900 года - серийный номер 1, а 3 февраля 1997 года - серийный номер 35464, поскольку после 1 января 1900 года он составляет 35 464 дня. Если вы измените формат ячейки с отображаемой датой на Общий формат, в ячейке будет показан серийный номер.

Excel показывает ячейку с функцией =MONTH() как 02-01-00 потому что ячейка отформатирована как дата, а дата для серийного номера для 2 - 2 января 1900 года. MONTH() вернул 2 за 3 февраля 1997 года.

Измените ячейку с помощью MONTH() чтобы отобразить ячейку в виде числа (например, General), и в ячейке отобразится 2 .

0

Используйте следующую формулу:
=TEXT(B1,"mm")
в B1 у вас есть формула =DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2))
С помощью вашего метода вы можете изменить формат ячейки =month() на General вместо Date(short или Long)
Формат ячейки меняет отображение на то, что вы хотите прочитать

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .