excel如何把时间段转换为分钟或小时数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel如何把时间段转换为分钟或小时数相关的知识,希望对你有一定的参考价值。

方法一:

1、不习惯通过文本函数提取数据的情况下,将A列数据复制到D列;

2、选择D列,在“数据”选项下的“分列”中,以“分隔符号”分列;

3、分隔符号选择其他中的“-”,预览也可见分列后的效果;

4、在B2单元格中输入以下公式,然后向下填充公式

=(E2-D2)*24

5、可根据需要隐藏辅助列D:E。

 

方法二:

在B2单元格输入以下公式,然后向下填充公式

=(RIGHT(A2,LEN(A2)-FIND("-",A2))-LEFT(A2,FIND("-",A2)-1))*24

公式表示:将A2单元格分隔符后的数据,减去分隔符前的数据,结果乘以24,得到小时数。

参考技术A

直接上公式,亲测有效,而且步骤简单!

=RIGHT(A1,5)*24-LEFT(A1,5)*24

参考技术B 如果A列为带有天数、小时的数字,把B列转化为分钟数。则以B2为例:
=ROUND((LEFT(B2,FIND("天",B2)-1)+MID(B2,FIND("天",B2)+1,50))*1440,)
然后点中B2右下角的黑角,下拉即可实现整列转换。

php 将时间戳转换为秒(2 小时 12 分钟或 2:12:00)

【中文标题】php 将时间戳转换为秒(2 小时 12 分钟或 2:12:00)【英文标题】:php convert time stamp to seconds (2 hours 12 min or 2:12:00) 【发布时间】:2016-05-22 18:21:28 【问题描述】:

您好,我正在尝试将时间戳转换为秒。目前时间戳将以两种形式传输,并希望为其中任何一种做好准备。但是我认为我用我尝试过的方法让自己变得更加困难。

所以例如输入是

1 小时 1 分 1 秒2 小时 2 分 2 秒

我希望最终输出是下面的示例,这样我就可以将该数字转换为秒数:

01:01:0102:02:02

我不知道会是什么情况,它将是通过 url 传递的参数,这是我迄今为止尝试过的,但就像我说的那样,它显示不正确:

$recent_time = htmlspecialchars($_GET["time"]);

$recent_time = preg_replace("/[^0-9,.]/", ":", $recent_time);
    $recent_time = preg_replace("/(.)\\1+/", "$1", $recent_time);

echo $recent_time;

如您所见,我用冒号替换所有字母并确保冒号不重复,因此输出将为 xx:xx:xx 但有时输出不准确这里是我将如何翻译输出到秒:

$str_time = preg_replace("/^([\d]1,2)\:([\d]2)$/", "00:$1:$2", $recent_time);
        sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
        $time_seconds = $hours * 3600 + $minutes * 60 + $seconds;
        $sum_total = $time_seconds + $old_time;

问题在于,如果它只是 min + sec,它不会正确地将其转换为秒。因此,例如时间是 10 分 13 秒,它将输出 10:13:,但它不会正确地将其转换为秒,因为它不是 00:10:13。我试图截断最后的冒号,但它仍然无法区分分钟/秒/小时

$recent_time = substr_replace($recent_time ,"",-1); 

编辑

$converted_time = date('H:i:s',strtotime('$recent_time', strtotime('midnight')));

【问题讨论】:

我们可以假设输入只能是%d hour[s] $d minute[s] %d second[s]这样的格式吗? @lolbas 正确,url 参数将仅包含该格式,例如:www.somewebsite.com/info.php/?time=x hour[s] x minute[s] x second[s] 但如果只有 25 秒,它不会是 0 小时 0 分 25 秒,它只会说 www.somewebsite.com/info.php/?time=25 seconds 【参考方案1】:

改用php strtotime函数

date('H:i:s',strtotime('1 hour 1 minute 1 second', strtotime('midnight'))); // 01:01:01
date('H:i:s',strtotime('2 hours 2 minutes 2 seconds', strtotime('midnight'))); // 02:02:02
date('H:i:s',strtotime('10 minutes 13 seconds', strtotime('midnight'))); // 00:10:13

【讨论】:

我去了 php 网站并查找了 php strtotime,它看起来比我一直在做的绝对干净。但我正在学习,我确实尝试过自己学习,但我被卡住了....输出仅显示 17:00:00 我假设它是“午夜”部分。我从this website 'H:i:s' 收集的内容是我希望它采用的格式,这是正确的,我希望它格式的字符串是 '1 小时 1 分 1 秒' 或者在我的情况下是 $recent_time , 该网站说它的计算应该给出的时间。但它只输出 17:00:00。见编辑 strtotime 使第一个参数相对于第二个参数的时间。说午夜,我们将基准设为 00:00:00。 (没有它,它将是当前时间)。结果,“时间部分”是从字符串产生的时间(和今天的日期,但这并不重要) 感谢您的解释,我编辑的字符串:$converted_time = date('H:i:s',strtotime('$recent_time', strtotime('midnight'))); 无效吗?我确实在网站上阅读过,如果您不包含 time(),它将默认为 now,这就是为什么我们将其设置为午夜的原因。我只是不明白为什么无论输入如何输出都只有17:00:00 从这里删除引号 - strtotime('$recent_time', 呃!!!!天啊。尴尬。我一直在寻找超出我技能的东西,哈哈,谢谢你的耐心和理解。我真心的。我真的很感谢这里的人们以尊重的态度对待那些试图学习的人。谢谢

以上是关于excel如何把时间段转换为分钟或小时数的主要内容,如果未能解决你的问题,请参考以下文章

excel时间转化为小时

excel中的day怎么转换成小时?

EXCEL文本时间 转换成多少小时

如何将EXCEL表格的一列时间整体加1分钟、1秒钟或1小时?

Excel:将持续时间(小时、分钟、秒)转换为 6 分钟的增量

如何将EXCEL表格的一列时间整体加1分钟、1秒钟或1小时?