vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Liegt die Uhrzeit zwischen zwei Uhrzeiten? 
Autor: Virtex
Datum: 07.03.23 16:28

Hallo zusammen,

wie kann ich prüfen, ob eine Uhrzeit (jetzt) zwischen 2 Werten liegt?

Ich habe 2 Comboboxen (Start und Endzeit) mit Uhrzeiten im 15 Minuten Takt, in denen jeweils eine ausgewählt wird. Nun würde ich gerne prüfen ob "Jetzt" dazwischen liegt oder nicht.

Die Startzeit kann allerdings auch größer sein, als die Endzeit (Bsp. von 20:00 Uhr bis 01:00 Uhr). Die Zeiten würde ich gerne in der Form hh:mm belassen ohne auf Sekunden zurückgreifen zu müssen.

Sollten die Zeiten wie im Beispiel sein, wird bereits eine Variable daychanged = True gesetzt, die ich dafür schon angelegt hatte. Leider bringt mich das nicht weiter bislang.

Habt ihr da eine Idee wie das zu prüfen ist? Hab DateDiff in Verdacht, aber alle Versuche waren bislang erfolglos...


Gruß

Virtex
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Liegt die Uhrzeit zwischen zwei Uhrzeiten? 
Autor: Virtex
Datum: 07.03.23 18:45

OK. ich habe jetzt eine Lösung gefunden die funktioniert.

Public Function check_period(Starttime As String, Endtime As String, NewDay As _
  Boolean)
 
Dim start As Double
Dim ende As Double
Dim nowtime As Double
 
If NewDay = True Then
 
start = CDbl(CDate((Date - 1) & " " & Starttime))
ende = CDbl(CDate(Date & " " & Endtime))
nowtime = CDbl(CDate(Format$(now, "dd.mm.yyyy hh:nn")))
 
If nowtime > start And nowtime < ende Then
periode = True
Else
periode = False
End If
 
Else
start = CDbl(CDate(Date & " " & Starttime))
ende = CDbl(CDate(Date & " " & Endtime))
nowtime = CDbl(CDate(Format$(now, "dd.mm.yyyy hh:nn")))
 
If nowtime > start And nowtime < ende Then
periode = True
Else
periode = False
End If
 
End If
Dachte ich poste das einfach mal falls das jemandem hilft.

Gruß

Virtex
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Liegt die Uhrzeit zwischen zwei Uhrzeiten? 
Autor: Wolfgang Schwarz
Datum: 08.03.23 22:10

Da hätte ich 2 Ideen:

1.)
Ich würde die Datum/Zeitangaben je in einen String in der Form JJJJMMTTSSMMSS umwandeln und dann die Strings gegeneinander auf größer/kleiner prüfen.

2.)
Die DateDiff-Funktion benutzen, das Ergebnis muss positiv sein.

Wolfgang Schwarz

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel