繁体   English   中英

如何计算不同组唯一值的excel vba中的时间差(以秒为单位)?

[英]How to calculate time difference (in second) in excel vba for different group of unique values?

我知道这个问题以前经常出现,但我所拥有的是不同的情况。 我有一些关于两个组的日期和时间的数据。 我想知道每个组的持续时间,但我不知道如何在 Excel VBA 代码中编写它。 你能帮我解决吗? 这是我的excel表。 在此处输入图像描述困难的是,当在同一组中时,它已更改为其他日期,但是当我尝试减去差异时,它可能是负值而不是正值。 例如 :

02.09.2017 19:00:00
03.09.2017 01:00:00

在这种情况下,我不能减去 01:00:00 - 19:00:00 因为那会是负数,因此我必须考虑日期的变化。 如果是这样,我该如何解决? 非常感谢你的帮助。

如果您的单元格被格式化为数据和时间,您可以使用DateDiff函数,以"n"作为间隔(以秒为单位表示差异)。

我已经用你的数据进行了测试:

A1 02.09.2017 19:00:00 
A2 03.09.2017 01:00:00

代码

Option Explicit

Sub CalcSecond()

Dim NumofSec As Long

NumofSec = DateDiff("n", Range("A1").Value, Range("A2").Value)

MsgBox NumofSec

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM