If nystarttid >= booketstarttid Then If nystarttid >= booketsluttid Then
ok = True Else ok = False End If Else
If nysluttid <= booketsluttid Then ok = True Else ok = False
End If End If
If ok = True Then MsgBox ("ledigt") Else MsgBox ("optaget") End If End Sub --- Så snart nystarttid ligger før booketstarttid, og nysluttid ligger efter booketsluttid er "OK=True" hvilket ikke er rigtigt. Hvordan kan dette løses ?
tdaugaard har ret i at det muligvis er fordi VB ikke kan finde ud af at konvertere dine datoer til dato variable. Så prøv at læg datoerne ind med formatet dd-mm-yyyy.
Prøv lige efter de fire datotilskrivninger at indsætte debug udskrivninger af variablerne:
----------------------------------------------------- Dim booketstarttid As Date, booketsluttid As Date Dim nystarttid As Date, nysluttid As Date
bookstart = "18-04-1999" bookslut = "25-05-1999"
nystart = "14-04-1999" nyslut = "26-04-1999"
Select Case nystarttid >= booketstarttid Case True: ok = nystarttid >= booketsluttid Case False: ok = nysluttid <= booketsluttid End Select
Select Case ok Case True: MsgBox "ledigt" Case False: MsgBox "optaget" End Select -----------------------------------------------------
At sige
If vblabla < yaddayadda Then ok = True Else ok = False End If
er det samme som
ok = vblabla < yaddayadda
da "vblabla < yaddayadda" er en evaluering der vil returnere enten True eller False behøver du ikke selv evaluere den med en If..Else..Then blok.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.