Een datum tussen twee andere datums verifieren (VB6)

Status
Niet open voor verdere reacties.
Dat is VB6 en kan ik vanavond thuis pas voor je bekijken.
 
Maak er dit van:
Code:
Private Sub Command1_Click()
    If DateValue(datarif.Text) > DateValue(datamin.Text) And DateValue(datarif.Text) < DateValue(datamax.Text) Then
         MsgBox ("Fout input")
    Else
         MsgBox ("Ok")
    End If
End Sub

Je had achter de If ook de min en max omgedraaid.
 
Laatst bewerkt:
Ik heb pas getest en ….is perfect .
Ik moet nu wel integreren in de programma. Het was een voorbeeld.

Bedankt voor uw gebruikelijke inzet en geduld

Dank U;)
 
Hier de aangepast code. Maar nog niet goed. Ik geef als date format XX/XX/XXXX
Format dat je op een tekstveld zet, doet niets voor de werkelijke waarde die je uitleest. Een datum is altijd een getal, hoe je er ook naar kijkt. In je code gebruik je voor de variabelen dezelfde namen als voor je tekstvelden. Dat is erg onverstandig, zeker als je ze in de code ook nog eens declareert, want daarmee maak je ze namelijk ook gelijk leeg. Dus de variabele datarif die een waarde moet krijgen uit het tekstveld datarif moet krijgen, is vragen om moeilijkheden. Doe dat dus nooit (meer)! Noem je tekstvelden bijvoorbeeld txtDatarif, en vul ze dan zo:

Code:
Private Sub Command1_Click()
Dim datarif As Double
Dim datamin As Double
Dim datamax As Double
Datarif = CDbl(Me.txtDatarif.Value)
Datamin = CDbl(Me.txtDatamin.Value)
Datamax = CDbl(Me.txtDatamax.Value)
If datarif > datamax And datarif < datamin Then
     MsgBox ("Fout input")
Else
     MsgBox ("Ok")
End If
End Sub
Dan zou het al beter moeten werken. Je zou ook nog eens een onderbrekingspunt in kunnen stellen op de eerste regel, en met de muis controleren of er wel een waarde wordt ingelezen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan