3

我想处理谷歌电子表格中的以下列。Time 列表示运行 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

4 回答 4

4

您可以使用 LEFT(text, number)、MID(text, start, number) 和 RIGHT(text, number)。

详细地:

Minutes = LEFT(B2, 1)
Seconds = MID(B2, 3, 2)
Milliseconds = RIGHT(B2, 2)
于 2012-11-30T20:27:58.757 回答
1

您可以将SUM用于这些值,例如:

=SUM(A1:A4)

或者,如果您想要更细粒度的控制,您可以使用HOURMINUTESECOND等函数来提取适当的值。

于 2013-02-26T11:24:09.317 回答
0

在您的原始工作表中,在一个新列中:

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

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

于 2012-12-18T14:25:29.307 回答
0

如果源数据是指定的(即Time 列表示分钟、秒和毫秒),则能够添加到一个合理的结果(四个样本的第一个样本为 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))

`

于 2018-06-01T23:45:31.387 回答