如何在 vba 中比较日期(附示例)
您可以在 VBA 中使用以下基本语法来比较两个日期:
SubCompareDates ()
Dim i As Integer
For i = 2 To 5
If CDate(Range(" A " & i)) < CDate(Range(" B " & i)) Then
Result = " First Date is Earlier "
Else
If CDate(Range(" A " & i)) > CDate(Range(" B " & i)) Then
Result = “ First Date is Later ”
Else
Result = " Dates Are Equal "
End If
End If
Range(" C " & i) = Result
Next i
End Sub
此特定示例将比较范围A2:A5和B2:B5中相应单元格中的日期,并返回范围C2:C5中日期比较的结果。
注意: CDate函数将给定单元格的值转换为日期。
以下示例展示了如何在实践中使用此语法。
示例:比较 VBA 中的日期
假设 Excel 中有以下两列包含日期:
假设我们要比较每个匹配行中的日期并将日期比较结果显示在 C 列中。
我们可以创建以下宏来执行此操作:
SubCompareDates ()
Dim i As Integer
For i = 2 To 5
If CDate(Range(" A " & i)) < CDate(Range(" B " & i)) Then
Result = " First Date is Earlier "
Else
If CDate(Range(" A " & i)) > CDate(Range(" B " & i)) Then
Result = “ First Date is Later ”
Else
Result = " Dates Are Equal "
End If
End If
Range(" C " & i) = Result
Next i
End Sub
当我们运行这个宏时,我们会收到以下输出:
日期比较的结果现在显示在 C 列中。
其他资源
以下教程说明如何在 VBA 中执行其他常见任务: