我想要一个vba代码来比较系统日期和我在excel工作表中连续(A)中提到的日期。如果日期相等,则应比较系统时间和行中提到的时间(B)。例如:如果表格中提到的时间是7:30 PM且系统时间是晚上7点,则应计算时间和显示之间的时间。如果表格中的日期不匹配则应该离开。
提前致谢。
答案 0 :(得分:0)
我整理了一个小程序让你入门。它假定工作表中的日期/时间在单元格A1中。如果系统日期与单元格A1中的日期相同,则它将系统时间与单元格A1中的时间进行比较。如果它们在一分钟内是相同的,那么没有任何反应。
但是,如果它们不同,那么它们不同的分钟数将出现在单元格B1中。
以下是代码:
Public Sub DateTimeCheck()
Dim d As Double
Dim s1 As String
Dim s2 As String
s1 = Format([a1], "dd-mm-yyyy hh:mm")
s2 = Format(Now, "dd-mm-yyyy hh:mm")
If Left$(s2, 10) = Left$(s1, 10) Then
d = TimeValue(Right$(s2, 5)) - TimeValue(Right$(s1, 5))
If d Then
[b1] = d * 1440
End If
End If
End Sub
现在,如果你有更多的单元格在列A中有日期,并且你想要比较它们,那么你需要修改这段代码,以便它“处理”所有这些代码。
至于在电子邮件中写下分钟的差异......我们需要更多详细信息!