Supportnet / Forum / Datenbanken
Datum berechnen
Frage
HILFE Ich krieg die Krise. Ich habe folgendes Problem:
In eine Kundentabelle habe ich die Kundendaten mit ihrem Geburtstag erfasst. Ich möchte jetzt erreichen, das mir in einer Abfrage drei Tage vor dem Geburtstag eines Kunden dieser angezeigt wird. Leider hab ich das bisher nur soweit hinbekommen, solange es keine Monats- oder jahresüberlappung gibt. d.h. wenn jemand z.B am 1.9. geburtstag hat müsste er am 29.8.angezeigt werden. Wie kriegt man das hin???
Bitte schnell, es eilt.
Danke vorab
Andi
Antwort 1 von mapet
Hallo
erstelle in Deiner Abfrage ein Feld =Geburtsdatum - 3 und vergleiche es mit dem heutigen Datum
Wenn etwas automatisch erscheinen soll erstellst du am besten ein makro mit namen autoexec das den Bericht geburtstage aufruft (in meinem Fall so)
mapet
erstelle in Deiner Abfrage ein Feld =Geburtsdatum - 3 und vergleiche es mit dem heutigen Datum
Wenn etwas automatisch erscheinen soll erstellst du am besten ein makro mit namen autoexec das den Bericht geburtstage aufruft (in meinem Fall so)
mapet
Antwort 2 von Poly
Danke,so wollte ich es ja machen, es funktioniert aber leider nicht, weil ja das Jahr nicht übereinstimmt. Es wird nichts angezeigt.
Antwort 3 von Poly
Habe das Problem gelöst, habe das geburtsdatum -3 berechnet, dan zerlegt in Tag, Monat und jahr, dasselbe mit dem aktuellen datum und dann verglichen. jetzt klappts sogar bei Monats-und !!! Jahresüberlappungen. Ächz !! Trotzdem nochmal DANKE!!!
Andi
Andi
Antwort 4 von oliverV
Hallo Andi,
erweitere deine Abfrage (Datenherkunft) um ein Feld:
Geb: Format([Geburtstag];"mmtt")
Verwende in diesem Feld als Kriterium:
Zwischen Format(Datum();"mmtt") Und Format(Datum()+3;"mmtt")
Nun werden dir alle Gebutstage von heute und den nächsten drei Tagen angezeigt.
Das Problem mit dem Monatswechsel hast du damit erschlagen, für den Jahreswechsel habe ich leider auch keine Lösung.
Gruß
Oliver
erweitere deine Abfrage (Datenherkunft) um ein Feld:
Geb: Format([Geburtstag];"mmtt")
Verwende in diesem Feld als Kriterium:
Zwischen Format(Datum();"mmtt") Und Format(Datum()+3;"mmtt")
Nun werden dir alle Gebutstage von heute und den nächsten drei Tagen angezeigt.
Das Problem mit dem Monatswechsel hast du damit erschlagen, für den Jahreswechsel habe ich leider auch keine Lösung.
Gruß
Oliver
Antwort 5 von mapet
Hallo
Und wenn Du zwei Felder erstellst mit
=tag(Geburtsdatum - 3)
= monat(Geburtsdatum - 3)
und diese entsprechend vergleichst mit
tag(datum())
und monat(datum())
mapet
Und wenn Du zwei Felder erstellst mit
=tag(Geburtsdatum - 3)
= monat(Geburtsdatum - 3)
und diese entsprechend vergleichst mit
tag(datum())
und monat(datum())
mapet
Antwort 6 von mapet
Hallo
vergesst meine vorherige Antwort ganz falsch
mapet
vergesst meine vorherige Antwort ganz falsch
mapet
Antwort 7 von oliverV
Klar so klapps, das Geburtsdatum "zerlegen" und nicht das Tagesdatum.
Antwort 8 von Poly
Toll, vielen dank , ich habe die Lösung hingekriegt. Für alle die es interessiert:
Ich habe das Geburtsdatum und das aktuelle Datum zerlegt, beim Geburtstag im Tag und Monat den Abzug der 3 Tage im Ausdruck angegeben und mit dem zerlegten aktuellen datum verglichen und jetzt funktioniert es sogar beim Monats und siehan auch beim Jahreswechsel. Trotzdem vielen dank an alle.
Tip4 war auch nicht schlecht, kann ich aber leider nicht gebrauchen, weil das Unternehmen nur die Geburtstage seiner Kunden 3 Tage vorher für ein glückwunschschreiben haben will.
Ich habe das Geburtsdatum und das aktuelle Datum zerlegt, beim Geburtstag im Tag und Monat den Abzug der 3 Tage im Ausdruck angegeben und mit dem zerlegten aktuellen datum verglichen und jetzt funktioniert es sogar beim Monats und siehan auch beim Jahreswechsel. Trotzdem vielen dank an alle.
Tip4 war auch nicht schlecht, kann ich aber leider nicht gebrauchen, weil das Unternehmen nur die Geburtstage seiner Kunden 3 Tage vorher für ein glückwunschschreiben haben will.

