3

我有来自数据记录器的文本文件,格式如下

hh:mm, Data, Data

我需要导入 Excel。

我一生都无法弄清楚如何让 Excel 将 hh:mm 部分导入为(24 小时格式)时间而不是文本。是否可以?如果没有,是否有任何直接的方法可以将一列 hh:mm 文本转换为 Excel 的时间格式?(我知道我可以写一个转换公式,但必须已经内置了一些东西对吗?)

OS X 上的 Excel 2008

4

4 回答 4

3

不知道有没有一个好的方法可以用一个按钮来做到这一点,但是

=TIMEVALUE(A1)

A1 是您的日期应该可以解决问题。

于 2010-12-18T08:39:08.900 回答
1

如果所有时间都被格式化为 hh:mm,那应该很简单。

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)
于 2010-12-18T18:14:26.407 回答
0

在导入后将列格式化为时间为时已晚,但在应用FROM TEXT时应该可以作为导入的一部分。

尽管未在链接中显示,但第 3 步(共 3 步)应该允许您将相关的列数据格式设置为常规,并且导入中午例如0.5显示为12:00

于 2015-05-31T02:10:22.350 回答
-1

假设我有一个Time.txt使用单列时间调用的文件,如下所示:

22:13
09:25
12:20

我想将它们读入一个 excel s/sheet 并将它们放在范围 A1 到 A3 中并将它们格式化为hh:mm:ss. 此代码显示了如何实现这一点:

(注意:您需要添加对 的引用才能Microsoft Scripting Runtime使其正常工作。在 VB 编辑器中:Tools > References > Microsoft Scripting Runtime

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
于 2010-12-18T12:13:39.733 回答