如何将自定义日期转换为日期进行比较?

时间:2014-03-26 14:22:03

标签: vba excel-vba excel

我需要转换电子表格1中的自定义日期数据,以便与电子表格2中的日期数据进行比较。自定义日期数据的格式为:21/02/2014 08:09:21 am,将被存储在变量Date1中。日期数据为:21/02/2014,并存储在Date2中。我只需要比较日期(没有时间参数)和指令"如果",例如

If Date1=Date2 Then

   'Instruction

End If

我有大部分代码,所以我基本上只需要将自定义日期数据转换为日期数据,存储在变量中并进行比较。

1 个答案:

答案 0 :(得分:1)

VBA解决方案:

enter image description here

Sub timeCompare()
    date1 = Application.WorksheetFunction.Text([A1], "d/m/yyyy")
    date2 = Application.WorksheetFunction.Text([A2], "d/m/yyyy")

    If date1 = date2 Then
        MsgBox ("match")
    Else
        MsgBox ("no match")
    End If
End Sub

OR

Sub timeCompare()
    date1 = Int([A1])
    date2 = Int([A2])

    If date1 = date2 Then
        MsgBox ("match")
    Else
        MsgBox ("no match")
    End If
End Sub

结果:

enter image description here


公式解决方案:

=IF(TEXT(A1,"d/m/yyyy")=TEXT(A2,"d/m/yyyy"),"Match","No Match")

或者

=IF(INT(A1)=INT(A2),"Match","No Match")