首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在excel中将数字转换为时间-可变数字数

在excel中将数字转换为时间-可变数字数
EN

Stack Overflow用户
提问于 2018-04-17 13:58:03
回答 2查看 1.7K关注 0票数 1

我有一份从仓库管理系统下载的报告。

在这个报告中,有一个时间列,不幸的是,它将时间放入一个数字字符串中,这些数字可以在5-8位长的任何位置。

也就是说。

代码语言:javascript
运行
复制
22434900 = 22:43:49:00 with 22 being the hour, 43 the minutes, 49 the seconds.
2480000 = 02:48:00:00 with 2 being the hour, 48 the minutes etc.
54300 = 00:05:43:00

尾端的00 (毫秒)不改变每个数字,所以完全不相关。

是否有一种简单的方法来格式化这些单元格中的文本,使其显示为相对于数字的时间?

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-17 14:18:28

您可以在一些数学函数中使用TIME

代码语言:javascript
运行
复制
=TIME(INT(A1/1000000),MOD(INT(A1/10000),100),MOD(A1/100,100))

TIME需要3个参数:小时、分钟和秒。

为了得到时间,我除以1000000,然后INT将其舍入到最接近的整数。

为了得到分钟,我首先除以10000,但结果仍然是小时。所以我使用MOD (当一个数字除以另一个数字时,它给出了剩余的部分)。在第一个例子中,除以2243,其余的除以100是43,这是我正在寻找的分钟数。

为了获得秒数,我将这个数字除以100,类似于分钟,我使用MOD删除分钟和小时部分。如果有毫秒的话,我不会在这里使用INT,使用这个公式将保持它。

还请注意,我使用的是格式化hh:mm:ss.00,因为excel在尝试使用hh:mm:ss:00时会发出抱怨。

票数 2
EN

Stack Overflow用户

发布于 2018-04-17 14:50:47

我知道我迟到了,但另一个办法是:

代码语言:javascript
运行
复制
=TIMEVALUE(TEXT(A1/100,"00\:00\:00.00"))

同样,正如曾傑瑞在回答中提到的,您需要使用hh:mm:ss.00的单元格格式

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49880122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档