【问题标题】:How to clean messy time data using excel如何使用excel清理混乱的时间数据
【发布时间】:2018-02-08 14:55:40
【问题描述】:

我有一个从 GPS 系统检索到的持续时间(时间)数据。数据显示了球员在比赛中的持续时间。问题是,对于少数记录,数据显示为 20:12(20 分钟和 12 秒),而少数记录显示为 20:12:00(20 分钟,12 秒,00 毫秒)。

我可以把所有这些记录都改成秒格式吗(如附图所示)?

PS:我不想把它转换成文本格式,因为我需要用它做一些计算和分析。

TIA!

[

【问题讨论】:

  • 如果您格式化单元格[hh]:mm:ss19:12 会是什么样子?
  • 这些记录的格式类似于 19:12 - h:mm ..... 27:21:00 - [hh]:mm:ss
  • 这不是我的问题,我的问题是;如果将19:12 的格式从原来的格式更改为[hh]:mm:ss,会是什么样子?
  • 谢谢,@ScottCraner 我现在已将所有记录更改为 [hh]:mm:ss 格式。现在,我需要将这些转换为秒。
  • 最后一次,请展示一下它现在的样子。是00:19:12 还是19:12:00

标签: excel datetime time data-cleaning


【解决方案1】:

用途:

=TEXT(A2,"[hh]")*60 + MINUTE(A2)

【讨论】:

  • 当我申请 =TEXT(F2,"[hh]")*60 + MINUTE(F2) 给我 - 3/30/1900 0:00
  • @vishnuprashanth 请单击您最终使用的答案旁边的复选标记,将您使用的那个标记为正确。
【解决方案2】:

试试下面的用户定义函数:

Public Function secondz(r As Range) As Long
    Dim s As String, arr

    secondz = 0
    s = r(1).Text
    If InStr(s, ":") = 0 Then Exit Function
    arr = Split(s, ":")
    secondz = CLng(arr(0)) * 60 + CLng(arr(1))
End Function

用户定义函数 (UDF) 非常易于安装和使用:

  1. ALT-F11 调出 VBE 窗口
  2. ALT-I ALT-M 打开一个新模块
  3. 粘贴内容并关闭 VBE 窗口

如果您保存工作簿,UDF 将与它一起保存。 如果您使用的是 2003 年以后的 Excel 版本,则必须保存 文件为 .xlsm 而不是 .xlsx

要删除 UDF:

  1. 如上所示打开 VBE 窗口
  2. 清除代码
  3. 关闭 VBE 窗口

要使用 Excel 中的 UDF:

=secondz(A1)

要了解有关宏的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

有关 UDF 的详细信息,请参阅:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

必须启用宏才能正常工作!

【讨论】:

  • 让我试着创建这个宏,然后更新你。谢谢!
  • 我创建了 UDF 并调用了函数 =secondz(A2) 并生成了类似 0:00 的答案。也许我猜宏中有一些需要更改/更正的内容.. 我会检查一下 :)
  • @vishnuprashanth 请将包含公式的单元格格式化为General
猜你喜欢
  • 2021-03-17
  • 1970-01-01
  • 2013-11-11
  • 1970-01-01
  • 1970-01-01
  • 2012-08-10
  • 1970-01-01
  • 1970-01-01
  • 2012-10-22
相关资源
最近更新 更多