У меня есть таблица Excel, где данные имеют метку времени, но метка времени выглядит следующим образом (в одной ячейке):

Пт мар 11

Если бы это было 11 марта, пятница, данные было бы легче отсортировать. Как мне изменить значения с пт мар 11 на пт мар?

3 ответа3

2

Если вы сохраняете его как метку даты / времени, не имеет значения, как он отформатирован - просто выполните сортировку по столбцу.

Однако, если это просто текст, откровенно говоря, это намного сложнее.

Я бы порекомендовал просто изменить порядок самостоятельно.

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

0

Самый простой способ - открыть редактор VBA Alt+F11, вставить новый модуль и ввести этот UDF.

Function SplitDate(ByVal strTemp As String, _
ByVal strDelimiter As String, _
ByVal lngElement As Long)

SplitDate = Split(strTemp, strDelimiter)(lngElement)

End Function

Затем в Excel вы можете использовать формулу UDF как = SplitDate(INPUTTEXT, DELIMITER, ELEMENTTORETURN)

Например, скажем, у вас есть текст Fri Mar 11 в ячейке A1 то

= SplitDate(A1, "", 0) вернет "Пт"

= SplitDate(A1, "", 1) вернет "Mar"

= SplitDate(A1, "", 2) вернет "11"

Затем вы можете объединить их в формулу для перестановки вашей строки.

В качестве альтернативы используйте =DATE(YEAR(RIGHT(A1,LEN(A1)-FIND(" ",A1,1))),MONTH(RIGHT(A1,LEN(A1)-FIND(" ",A1,1))),1) преобразовать текст в ячейке A1 в дату. Поскольку нет Дня, я предположил 1-е число месяца (измените последний, 1, чтобы изменить ДЕНЬ).

0

Предполагая, что форматом всегда являются 3 буквы для дня, 1 пробел, 3 буквы для месяца, 1 пробел, затем 1 или 2 цифры для дня месяца, и все ваши даты в 2011 году, текст можно преобразовать в число, представляющее дата с формулой

= DATEVALUE(ВПРАВО (A1, LEN (A1)-8)& "" & MID (A1,5,3)& "2011")

Таким образом, вы можете добавить дополнительный столбец и вставить эту формулу, скопировать ее и отсортировать по этому столбцу.

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