изменить формат даты excel

#excel #formula

#excel #формула

Вопрос:

У меня есть следующая дата в Excel «5/2/2020», я хотел бы получить «5 / Feb / 2020», но, к сожалению, я получаю «May / 2 / 2020».

Также пытался изменить формат ячеек, но Excel по-прежнему интерпретирует, что первое число — это месяц.

Как мне сообщить Excel, что месяц находится на второй позиции?

Комментарии:

1. Является ли значение 5/2/2020 строкой или датой? Если вы добавите к нему 1, это даст вам 6/2/2020, 5/3/2020 или #VALUE! ?

2. Вы можете попробовать щелкнуть ячейку правой кнопкой мыши, затем отформатировать ячейки -> Custum и ввести write: d / mm / yyyy

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

Ответ №1:

Попробуйте: если 5/2/2020 находится в ячейке E5, то:

 =VALUE(TEXT(E5,"d/mm/yyyy"))
 

и затем пользовательское число форматирует эту ячейку в d / mmm / гггг

даст 5 / Февраль / 2020

Комментарии:

1. После повторного тестирования эта формула не работает для =VALUE(ТЕКСТ(«13/01/2021″,»д / мм / гггг»)), выдает ошибку. Это работает, когда в первой позиции находятся числа <= 12

2. Я добавил еще один ответ, используя пользовательскую функцию VBA. Это должно сработать.

Ответ №2:

Хорошо, вот новый метод, протестированный со следующими датами 5/2/2020, 22/2/2020, 22/12/2020, 12/2/2020.

Эта функция разбивает номера дат на 3 части и помещает их в массив, используя «/» в качестве разделителя. Затем он повторно собирает 3 части в нужном вам порядке.

Шаг 1. Добавьте следующую пользовательскую функцию в модуль VBA:

 Function Dates(Cell As Variant)
'Forces recalculation when call values are changed
 Application.Volatile

  Dim DateString As String
  Dim DateArray() As String

  DateString = Cell
  DateArray = Split(DateString, "/")
  Dates = DateArray(1) amp; "/" amp; DateArray(0) amp; "/" amp; DateArray(2)

End Function
 

Шаг 2. Например, введите дату, которую вы хотите преобразовать, в ячейку A1 (т.е. 5/2/2020).

Шаг 3: Поместите функцию formula =VALUE(Даты (A1)) в ячейку B1.

Шаг 4: Примените пользовательский формат чисел к ячейке B1: d / ммм / гггг, и результатом будет 5 / Feb / 2020.

Если вы хотите изменить формат чисел на ммм / дд / гггг, то результатом будет февраль / 05 / 2020.

Примечание: формула =VALUE(Даты (A1)) будет работать в любом месте электронной таблицы. Все, что вам нужно сделать, это изменить ссылку на ячейку A1 на другую ссылку на ячейку. Вы также можете использовать формулу много раз в одной и той же электронной таблице.

Сэмми