Как импортировать текст в формат времени?

У меня есть текстовые файлы из регистратора данных в таком формате

hh:mm, Data, Data

что мне нужно импортировать в Excel.

Я не могу понять, как заставить Excel импортировать часть чч: мм как время (24-часовой формат) вместо текста. Является ли это возможным? Если нет, есть ли простой способ преобразования столбца текста чч: мм в формат времени Excel? (Я знаю, что могу написать формулу преобразования, но должно же быть что-то уже встроенное, верно?)

Excel 2008 на OS X


person notMyScreenName    schedule 17.12.2010    source источник
comment
Что произойдет, если вы просто отформатируете столбец как время после импорта?   -  person Fionnuala    schedule 17.12.2010


Ответы (4)


Не уверен, что есть хороший способ сделать это с помощью кнопки, но

=TIMEVALUE(A1)

где A1 — ваша дата, должно помочь.

person Alex Andronov    schedule 18.12.2010
comment
Спасибо. Это выглядит хорошо. Я просто надеялся избежать еще большего количества столбцов в и без того громоздкой электронной таблице. Меня раздражает, потому что Excel правильно импортирует даты, но не время. - person notMyScreenName; 18.12.2010

Если все время отформатировано как чч:мм, это должно быть довольно просто.

A       B           C            D
22:15   =LEFT(A1,2) =RIGHT(A1,2) =TIME(B2,C1,0)

Все, что вы здесь делаете, это берете текст (столбец A), изолируете часы (столбец B) и минуты (столбец C) и используете функцию TIME, чтобы собрать их вместе.

Вы даже можете сделать это в одной формуле:

=TIME(LEFT(A1,2),RIGHT(A1,2),0)
person aed    schedule 18.12.2010

Слишком поздно форматировать столбец как время после импорта, но это должно быть возможно как часть импорта при применении ИЗ ТЕКСТА.

Хотя это не показано в ссылке, шаг 3 из 3 должен позволить вам установить для соответствующего формата данных столбца значение «Общий» и импортировать полдень, например, как 0.5, отображаемый как 12:00.

person pnuts    schedule 31.05.2015

Предположим, у меня есть файл с именем Time.txt с одним столбцом времени следующим образом:

22:13
09:25
12:20

Я хотел бы прочитать их в excel s/sheet и поместить их в диапазон от A1 до A3 и отформатировать их как hh:mm:ss. Этот код показывает, как это может быть достигнуто:

(Примечание: вам нужно добавить ссылку на Microsoft Scripting Runtime, чтобы это заработало. В редакторе VB: Инструменты > Ссылки > Среда выполнения сценариев Microsoft )

Sub GetTimesFromFile()

Dim oFSO As New Scripting.FileSystemObject
Dim targetFile As Object
Set targetFile = oFSO.OpenTextFile("C:\Time.txt") //Change for your file path as appropriate

Dim cellCount As Long
cellCount = 1

Do Until targetFile.AtEndOfStream
    Cells(cellCount, 1) = targetFile.ReadLine
    Cells(cellCount, 1).NumberFormat = "hh:mm:ss" //Time format I want
    cellCount = cellCount + 1
Loop

End Sub
person Alex P    schedule 18.12.2010
comment
Большое спасибо за это. Это определенно войдет в мои заметки для будущего использования ... Но, к сожалению, Microsoft сочла нужным удалить VB из Mac Office 2008. Он вернулся в Office 2011, но мы еще не обновились (он также был в Office 2004). - person notMyScreenName; 18.12.2010