在Excel 计算时间加减(时差、工作时间)

您所在的位置:网站首页 excel日期的加减月份计算方法是什么 在Excel 计算时间加减(时差、工作时间)

在Excel 计算时间加减(时差、工作时间)

2024-07-10 00:36| 来源: 网络整理| 查看: 265

由于日期和时间在Excel 的后端存储为数字,因此您可以轻松地对日期和时间值使用简单的算术运算和公式。

例如,您可以加减两个不同的时间值或日期值,或者您可以计算两个给定日期/时间之间的时间差。

在本教程中,我将向您展示在 Excel 中使用时间执行计算的几种方法(例如计算时差、加减时间、以不同格式显示时间以及计算时间值的总和)。

内容

1 Excel 如何处理日期和时间?2 计算两次时间差的公式2.1 Excel中计算时差的简单减法2.2 以小时、分钟或秒为单位计算时差2.2.1 以小时为单位计算时差2.2.2 以分钟为单位计算时差2.2.3 以秒为单位计算时差2.3 使用TEXT 函数计算时间差2.4 获取一个单位(小时/分钟)的时差,忽略其他2.5 计算到现在经过的时间(从开始时间开始)3 计算日期更改时的时间(在Excel 中计算并显示负时间)4 在Excel 中加减时间4.1 使用时间功能4.2 使用基本算术5 如何在Excel中求和时间5.1 如何在Excel 中求和超过24 小时6 结果显示哈希(###) 而不是日期/时间(原因+ 修复)6.1 列不够宽6.2 负日期值7 在Excel 计算时间加减的常见问题8 哦,您好很高兴认识你。 Excel 如何处理日期和时间?

正如我所提到的,日期和时间以数字形式存储在Excel 的单元格中。整数代表一整天,数字的小数部分代表一天中的部分(可以转换为小时、分钟和秒值)

例如,值1 在Excel 中表示1900 年1 月1 日,这是Excel 开始考虑日期的起点。

因此,2 表示1990 年1 月2 日,3 表示1900 年1 月3 日,依此类推,44197 表示2021 年1 月1 日。

注意:Excel for Windows 和Excel for Mac 遵循不同的开始日期。Excel for Windows 中的1 表示1900 年1 月1 日,Excel for Mac 中的1 表示1904 年1 月1 日

如果这些数字中的小数点后有任何数字,Excel 会将这些数字视为一天的一部分,并且可以将其转换为小时、分钟和秒。

例如,44197.5 表示2021 年1 月1 日下午12:00:00。

日期和时间及其等效数值

因此,如果您在Excel 中使用时间值,则基本上是在使用数字的小数部分。

Excel 让您可以灵活地将小数部分转换为不同的格式,例如仅小时、仅分钟、仅秒或小时、分钟和秒的组合

既然您了解了Excel 中的时间是如何存储的,那么让我们看一些示例,了解如何在Excel 中计算两个不同日期或时间之间的时间差

计算两次时间差的公式

在许多情况下,您要做的就是找出两个时间值之间经过的总时间(例如,在具有In-time 和Out-time 的时间表的情况下)。

您选择的方法取决于单元格中时间的提及方式以及您想要的结果格式。

让我们看几个例子

Excel中计算时差的简单减法

由于时间在Excel 中存储为数字,因此找到2 个时间值之间的差异,您可以轻松地从结束时间中减去开始时间。

结束时间- 开始时间

减法的结果也将是一个十进制值,表示两个时间值之间经过的时间。

下面是一个示例,其中我有开始时间和结束时间,并且我通过简单的减法计算了时间差。

用减法计算时间差

您的结果有可能以时间格式显示(而不是小数或小时/分钟值)。在上面的示例中,单元格C2 中的结果显示09:30 AM 而不是9.5。

这很好,因为Excel 会尝试从相邻列复制格式。

相关问题  Windows 10 的搜索栏无法输入[已修复]

要将其转换为小数,请将单元格的格式更改为“常规”(该选项位于“数字”组的“主页”选项卡中)

获得结果后,您可以用不同的方式对其进行格式化。例如,您可以仅以小时或仅以分钟或小时、分钟和秒的组合显示值。

以下是您可以使用的不同格式:

格式 它能做什么 hh 仅显示两个日期之间经过的小时数 mm 以两位数显示小时数(例如04 或12) hh:mm 显示两个日期之间经过的小时和分钟,例如10:20 HH:MM:SS  显示两个日期之间经过的小时、分钟和秒,例如10:20:36

如果您想知道在何处以及如何应用这些自定义日期格式,请按照以下步骤操作:

选择要应用日期格式的单元格 按住Control 键并按1 键(如果使用Mac,则按Command + 1) 在打开的“单元格格式”对话框中,单击“数字”选项卡(如果尚未选择)单击数字组 在左侧窗格中,单击自定义单击“设置单元格格式”对话框中的“自定义”选项 在类型字段中输入任何所需的格式代码(在此示例中,我使用的是hh:mm:ss)输入代码以显示小时分钟和秒 点击确定

上述步骤将更改格式并根据格式向您显示值。

时差计算结果

请注意,自定义数字格式不会更改单元格中的值。它只会改变值的显示方式。因此,我可以选择仅在单元格中显示小时值,而它仍然具有原始值。

专业提示:如果总小时数超过24 小时,请改用以下自定义数字格式:[hh]:mm:ss

以小时、分钟或秒为单位计算时差

当您减去时间值时,Excel 会返回一个十进制数,表示生成的时间差。

由于每个整数都代表一天,因此数字的小数部分将代表一天中的大部分时间,可以轻松转换为小时或分钟或秒。

以小时为单位计算时差

假设您有如下所示的数据集,并且您想要计算两个时间值之间的小时数

我们需要计算小时的时差

下面的公式将为您提供以小时为单位的时差:

=(B2-A2)* 24 小时差

上面的公式将为您提供两个时间值之间经过的总小时数。

有时,Excel 会尝试提供帮助,并且还会以时间格式为您提供结果(如下所示)。

时差仅以时间格式显示

您可以通过单击主页选项卡并在数字组中选择数字作为格式轻松地将其转换为数字格式。

单击格式下拉列表中的数字选项

如果您只想返回两次之间经过的总小时数(没有任何小数部分),请使用以下公式:

=INT((B2-A2)*24) 计算两次之间经过的小时数

注意:此公式仅适用于两个时间值在同一天的情况。如果日期发生变化(其中一个时间值是另一个日期,第二个是另一个日期),这个公式会给出错误的结果。在本教程后面的日期更改时,请查看我介绍计算时差的公式的部分。

以分钟为单位计算时差

要以分钟为单位计算时差,您需要将结果值乘以一天中的总分钟数(即1440 或24*60)。

假设您有一个如下所示的数据集,并且您想要计算开始日期和结束日期之间经过的总分钟数。

我们需要计算小时的时差

以下是可以做到这一点的公式:

=(B2-A2)*24*60 以分钟计算时差 以秒为单位计算时差

要计算以秒为单位的时间差,您需要将结果值乘以一天中的总秒数(即24*60*60 或86400)。

假设您有一个如下所示的数据集,并且您想要计算开始日期和结束日期之间经过的总秒数。

我们需要计算小时的时差

以下是可以做到这一点的公式:

=(B2-A2)*24*60*60 以秒为单位计算时差 使用TEXT 函数计算时间差

另一种无需担心更改格式即可快速获取时差的简单方法是使用TEXT 函数。

TEXT 函数允许您在公式中指定格式。

=TEXT(结束日期- 开始日期,格式)

第一个参数是您要执行的计算,第二个参数是您要显示计算结果的格式。

假设您有一个如下所示的数据集,并且您想要计算两次之间的时间差。

我们需要计算小时的时差

这里有一些公式可以为您提供不同格式的结果

仅显示小时数:

=TEXT(B2-A2,"hh") 使用TEXT 函数以小时为单位计算时间

上面的公式只会给你显示两个时间值之间经过的小时数的结果。如果您的结果是9 小时30 分钟,它仍将只显示9。

显示总分钟数

=TEXT(B2-A2,"[mm]") 使用TEXT 函数以分钟为单位计算时间

显示总秒数

=TEXT(B2-A2,"[ss]") 使用TEXT 函数以秒为单位计算时间

显示小时和分钟

=TEXT(B2-A2,"[hh]:mm") 小时和分钟的时差

显示小时、分钟和秒

=TEXT(B2-A2,"hh:mm:ss") 时分和秒的时差

如果您想知道格式(或mm 和[mm])中hh 和[hh] 之间的区别是什么,当您使用方括号时,它会为您提供两个日期之间的总小时数,即使小时值大于24。因此,如果您减去两个相差超过24 小时的日期值,使用[hh] 将为您提供总小时数,而hh 只会为您提供结束日期当天经过的小时数.

获取一个单位(小时/分钟)的时差,忽略其他

如果您只想以小时数或分钟数或秒数计算两个时间值之间的时间差,则可以使用专用的HOUR、MINUTE 或SECOND 函数。

这些函数中的每一个都接受一个参数,即时间值,并返回指定的时间单位。

假设您有一个如下所示的数据集,并且您想要计算这两次之间经过的总小时数和秒数。

进出时间数据集

以下是执行此操作的公式:

计算两次之间经过的小时数

=HOUR(B2-A2) 小时公式

根据时间值结果计算分钟(不包括已完成的小时数)

=MINUTE(B2-A2) 分钟公式

从时间值结果计算秒数(不包括完成的小时和分钟)

=SECOND(B2-A2) 第二个公式

使用这些HOURS、MINUTE 和SECOND 公式时需要了解的几件事:

结束时间和开始时间之间的差异不能为负数(日期更改时通常会出现这种情况)。在这种情况下,这些公式将返回#NUM!错误 这些公式仅使用结果时间值的时间部分(并忽略天部分)。因此,如果结束时间和开始时间的差是2 天、10 小时、32 分钟和44 秒,则HOUR 公式将给出10,MINUTE 公式将给出32,SECOND 公式将给出44 计算到现在经过的时间(从开始时间开始)

如果要计算开始时间和当前时间之间经过的总时间,可以使用NOW 公式而不是结束时间。

NOW 函数返回使用它的单元格中的当前日期和时间。它是不接受任何输入参数的函数之一。

因此,如果要计算开始时间和当前时间之间经过的总时间,可以使用以下公式:

=NOW() - 开始时间

下面是一个示例,其中我在A 列中有开始时间,在B 列中有到现在为止的时间。

计算到现在经过的时间

如果开始日期和时间与当前时间之间的时间差超过24 小时,那么您可以格式化结果以显示日期和时间部分。

您可以使用以下TEXT 公式来做到这一点:

=TEXT(NOW()-A2,"dd hh:ss:mm")

您还可以通过更改单元格的自定义格式(如本教程前面所述)来实现相同的目的,以便它显示日期和时间部分。

相关问题  Windows 10 蓝牙无法打开[已经修好了]

如果您的开始时间只有时间部分,那么Excel 会将其视为1990 年1 月1 日的时间。

在这种情况下,如果您使用NOW 函数来计算到现在所经过的时间,它将给您错误的结果(因为结果值也将包含自1990 年1 月1 日以来经过的总天数)。

在这种情况下,您可以使用以下公式:

=NOW()- INT(NOW())-A2

上面的公式使用INT 函数从now 函数返回的值中删除天部分,然后用于计算时间差。

请注意,NOW 是一个volatile 函数,它会在工作表发生更改时更新,但不会实时更新

计算日期更改时的时间(在Excel 中计算并显示负时间)

如果您的结束时间晚于开始时间,那么到目前为止介绍的方法效果很好。

但是,当您的结束时间低于开始时间时,就会出现问题。当您填写时间表时,通常会发生这种情况,您只输入时间而不是整个日期和时间。

在这种情况下,如果您在一个夜班工作并且日期发生变化,那么您的结束时间可能会早于您的开始时间。

例如,如果您在晚上6:00 PM 开始工作,并在早上9:00 AM 完成工作并暂停。

如果您只使用时间值,那么从结束时间中减去开始时间将得到9 小时(9 – 18) 的负值。

Excel 无法处理负时间值(就此而言,人类也无法处理,除非您可以进行时间旅行)

在这种情况下,您需要一种方法来确定日期已更改,并应进行相应的计算。

值得庆幸的是,有一个非常简单的解决方法。

假设您有一个如下所示的数据集,其中我有开始时间和结束时间。

不同日期的进出时间

正如您会注意到的那样,有时开始时间是晚上,结束时间是早上(这表明这是一个通宵班,并且一天已经改变)。

如果我使用下面的公式来计算时间差,它会在结果为负值的单元格中显示井号(在下图中以黄色突出显示)。

= B2-A2 显示哈希而不是经过的时间

这是一个IF公式,时间差值是否为负,如果为负则返回正确的结果

=IF((B2-A2)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3