Google SpreadSheet - 处理MM:SS.sss时间格式

时间:2012-02-29 12:02:23

标签: google-sheets

我想在google-spreadsheet中处理以下列。时间列表示运行1公里所需的分钟,秒和毫秒,我希望能够将这四个值相加。

Split   Time
1       3:13:4
2       3:20:5
3       3:16:1
4       3:26:3

我怀疑我需要将时间列转换并拆分为特定的分钟和第二列以实现此目标,但我会非常感谢开发人员可能提供的任何建议。

我更新了时间列的格式并使用了SPLIT / CONTINUE函数

Minutes=SPLIT(B2,":")
Seconds=CONTINUE(C2,1,2)
Total Seconds=(C2*60)+D2

该表现在看起来像

Split Time    minutes   Seconds Total Seconds
1   03:13:00    3   13  193 
2   03:15:00    3   15  195 
3   03:16:00    3   16  196 

仍然想知道将Total Seconds值转换为时间的最有效方法。

4 个答案:

答案 0 :(得分:4)

您可以使用LEFT(文本,数字),MID(文本,开头,数字)和RIGHT(文本,数字)。

详细说明:

Minutes = LEFT(B2, 1)
Seconds = MID(B2, 3, 2)
Milliseconds = RIGHT(B2, 2)

答案 1 :(得分:1)

您可以将 SUM 用于这些值,即la:

=SUM(A1:A4)

或者,如果您想要更精细的控制,可以使用 HOUR MINUTE SECOND 等功能来提取适当的值。

答案 2 :(得分:0)

在原始工作表中的新专栏中:

= TO_DATE(“00:0”& left($ B2,4))

然后将公式复制到列中。 对于B列中的每个条目,这会将您的M:SS(数据的左侧4个字符)转换为工作表的系统日期/时间格式。 然后,您可以根据需要对结果进行求和。 这假设您的数据没有前导零。您可以添加代码来检查这一点,但如果您的时间都是分钟值的单个数字,则无关紧要。

答案 3 :(得分:0)

源数据是指定的(即时间列表示分钟,秒和毫秒)然后能够添加到合理的结果(第一个四个样本的795.013秒) )转换类似于:

 =60*index(split(B2,":"),0,1)+index(split(B2,":"),0,2)+index(split(B2,":"),0,3)/1000

是必需的。

将总数(假设为C6)转换为与输入(13:15:13)相同的荒谬格式:

=int(C6/60)&":"&int(mod(C6,60))&":"&value(mid(C6,find(".",C6)+1,3))

`