PDA

Vollständige Version anzeigen : Datums vergleich !


loco
17.01.2003, 12:26
Hallo,

ich habe folgendes Problem: über ein Formular gebe ich einen Zeitraum und diverse Daten ein. Bevor der Datensatz gespeichert wird soll über das aktuelle Datum geprüft werden, ob der eingegebene Zeitraum Aktuell oder Vergangen ist ! Das klappt ja auch ganz gut, jedoch möchte ich, daß die Meldung "Alt "nur dann ausgegeben wird, wenn es sich nur um einen vergangenen Monat handelt.

Beispiel:
Aktuelles Datum ist : 17.01.03 Eingabedatum ist 15.01.03 Meldung = Neu
bzw.
Akutelles Datum ist : 17.01.03 Eingabedatum ist 31.12.02 Meldung = Alt


Code:

endDate= me![zBis] & Jahr

If Date > endDate Then
MsgBox"Alt!"
Else
MsgBox"Neu"
End If

Gruß und Dank
loco

ThomasP
17.01.2003, 12:35
Hallo,
probiers einmal mit der Funktion month(Datum),
die liefert dir den aktuellen Monat, dann kannst du vergleichen,
es muss dann aber für Monat Jänner noch ein zusätzliches if dazu,
da es ja kein Monat 0 sondern nur Monat 12 (des vorangegangenen) Jahres gibt,
eventuell brauchst du dann auch noch year(datum).

ThomasP

Lanz Rudolf
17.01.2003, 14:02
Hallo
ev. Hilft Dir das etwas


Sub MMJJVergleich(DatVon As Date, DatBis As Date)
' Aufruf: Call MMJJVergleich("15.01.2003", "10.02.2003")
Dim dblVon As Double
Dim dblBis As Double
dblVon = Format(DatVon, "yyyymmdd")
dblBis = Format(DatBis, "yyyymmdd")
Debug.Print "Von "; DatVon; " Bis "; DatBis
If dblVon > dblBis Then
Debug.Print "alt"
Else
Debug.Print "neu"
End If
End Sub


Gruss
Ruedi ;)
oder eben nur "yyyymm"

loco
23.01.2003, 09:58
Hallo Leute,
vielen dank für die Hilfe, bin wie folgt vorgegangen:

Dim Datum1
Dim Year2 As String
Dim Month2 As String
Dim Monat1, Jahr1


Year2 = Me!Jahr ' imputfelder im Formular
Month2 = Me!Periode



Year2 = Me!Jahr
Month2 = Me!Periode
Datum1 = Date

Monat1 = Month(Datum1)
Jahr1 = Year(Datum1)

If Jahr1 > Year2 Then ' Prüfung ob es sich um ein abgelaufenes Jahr handelt

Msgbox" Abgelaufenes Jahr !"
ElseIf Jahr1 = Year2 And Monat1 > Month2 Then ' Prüfen ob es sich um ein abgelaufenen Monat im aktuellen jahr handelt.

MsgBox " Abgelaufener Monat ! "
End if


Gruß
loco