Mit diesem Snippet läst sich überprüfen ob ein Datum zwischen zwei anderen liegt.
Das Snippet wird über
Day_between_days (Start Datum,Enddatum, Vergleichs Datum, True/False)angesprochen und gibt ein boolesches True aus wenn das EndDatum Zwischen Start und EndDatum liegt.
Die letzte Variable gibt an ob Die Anfangs Und Enddaten miteinbezogen werden sollen.
Ein Beispiel:
If Day_between_days("1.5.2012", "6.5.2012", "3.5.2012", False) = True Then
MsgBox("ja")
Else
MsgBox("nein")
End If
Ausgabe hier wird eine Msgbox mit dem Inhalt: "ja" sein
Function Day_between_days(ByVal StartDate As Date, ByVal EndDate As Date, ByVal CompareDate As Date, ByVal StartEnd_involved As Boolean) As Boolean
Dim Temp1 As Integer
Dim Temp2 As Integer
temp1 = Date.Compare(StartDate, CompareDate)
Temp2 = Date.Compare(EndDate, CompareDate)
If Date.Compare(StartDate, EndDate) < 0 Then
If Temp2 = 0 And StartEnd_involved = True Or Temp1 = 0 And StartEnd_involved = True Then
Return True
Exit Function
End If
If Temp1 < 0 And Temp2 > 0 Then
Return True
Else
Return False
End If
Else
MsgBox("The start date is after the end date", MsgBoxStyle.Critical, "Error !")
Return False
End If
End Function
2 Kommentare zum Snippet