我有两个文本框有两个不同的日期,orderDate 和 recievedDate。收到的日期需要手动输入到表单中,我想包括 recievedData 应该在 orderDate 之后发生的验证,我试过:
If txtRecievedDate.Text < txtOrderDate.Text Then
MsgBox "Incorrect Date, item can't be recieved before order"
else
MsgBox "correct date"
End If
Run Code Online (Sandbox Code Playgroud)
这不起作用,例如 RecievedDate 值为“19/11/2013”,OrderDate 值为“20/10/2013”,尽管这将是一个正确的日期,但此语句仅比较“19”和“20”,因此标记它不正确。
有没有办法比较文本框中的两个日期?为此,我使用 VBA
谢谢
以下是修复代码的方法。当然,这不是进行日期计算的最佳方法,您还必须验证 2 个文本框中是否有文本,甚至可能用于CDate()将文本解析为日期值,但这适用于您当前的情况.
If DateDiff("d", txtOrderDate.Text, txtRecievedDate.Text) < 0 Then
MsgBox "Incorrect Date, item can't be recieved before order"
else
MsgBox "correct date"
End If
Run Code Online (Sandbox Code Playgroud)