Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: T417 am April 30, 2012, 12:56:10

Titel: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: T417 am April 30, 2012, 12:56:10
Hallo,

ich modifiziere im Moment die Datenbank meines Vorgängers.
Auf den ersten Blick hab ich da ein leichtes Problem, aber mir fällt da irgendwie nichts Brauchbares ein.

Ich soll in einen Formular die Möglichkeit hinzuprogrammieren, eine bestimmte (vom Nutzer eingebene) Anzahl Tage auf ein bestimmtes Datum aufzuaddieren. Das Problem: Der Tag darf kein Sonntag sein.

Mein Vorgänger hat bereits ein Kalender-Steuerelement dort eingebaut, ich hab allerdings keine Ahnung ob ich das für meine Zwecke brauchen kann.

Da bestimmt einer von euch schon mal ein ähnliches Problem hatte, kann mir bestimmt jemand einen Tip geben, oder?
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: oma am April 30, 2012, 14:35:35
Hallo,

da gib es verschiedene Möglichkeiten, abhängig davon wie du das händeln willst.

Eine einfache Lösung wäre in einem Formular mit einem Feld "DeinDatumsfeld" und einem Feld "DeineAnzahl" sowie ein ungebundenes Feld DatumNeu (mit Format, datum) mit
=DatAdd("d";[DeineAnzahl ];[DeinDatumsfeld ) und ein weiteres ungebundenes Feld mit =Format([DatumNeu];"dddd")

So siehst du bei Eingabe einer Anzahl , ob das berechnete Datum ein Sonntag ist.

Lässt sich natürlich noch besser prüfen, gestalten, ganz wie du das händeln willst

Gruß Oma
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: T417 am Mai 02, 2012, 12:17:49
Hallo,

danke für deine Antwort.
Ich habe das Ganze etwas anders lösen müssen, da ich wie erwähnt eine Datenbank meines Vorgängers bearbeiten muss.

Private Sub Text117_AfterUpdate()'In Text117 wird die Anzahl der Tage eingefügt
Dim Dat1Var As Integer
Dim Dat2Var As Date
   
Dat1Var = Me.Text117.Text

Me.Abrechnungsdatum.SetFocus
Dat2Var = Me.Abrechnungsdatum.Text
Dat2Var = Dat2Var + Dat1Var
Me.Text126.SetFocus'In Text126 wird dann das Zieldatumm angezeigt
Me.Text126 = Dat2Var

CurrentDb.Execute ("UPDATE tblAbr SET Zieldatum='" & Dat2Var & "'")
End Sub


Mein einziges Problem besteht nun darin, das, falls das Zieldatum ein Sonntag ist, das Datum für den nächsten Montag angezeigt werden muss.
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: daolix am Mai 02, 2012, 13:39:56

...
...
Dat2Var = Dat2Var + Dat1Var
if weekday(Dat2Var) = vbsunday then Dat2Var = Dat2Var + 1  '<----Neue Zeile
Me.Text126 = Dat2Var

CurrentDb.Execute ("UPDATE tblAbr SET Zieldatum='" & Dat2Var & "'")


Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: T417 am Mai 02, 2012, 15:11:35
Jou. Danke. :)
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: oma am Mai 02, 2012, 16:58:30
Hallo,

Zitatfalls das Zieldatum ein Sonntag ist, das Datum für den nächsten Montag angezeigt werden muss

das war nicht in der ersten Frage enthalten!

aber nun hast du ja eine Lösung!

Gruß Oma
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: MzKlMu am Mai 02, 2012, 17:04:35
Hallo,
und was soll passieren, wenn der Montag dann der Ostermontag ist?
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: oma am Mai 02, 2012, 17:10:05
Hallo,

haha, Klaus hat natürlich Recht, du müsstest sicher auf Sonn- und Feiertage prüfen!! :(

Gruß Oma
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: MzKlMu am Mai 02, 2012, 17:13:46
Hallo,
ich hätte auch noch die Weihnachstage, den 1.Mai, den Pfingstmontag  ;D ;D
Titel: Re: Einem Datum eine Anzahl Tage hinzurechnen
Beitrag von: T417 am Mai 08, 2012, 15:20:54
Hallo,

ich muss zum Glück nicht auf Feiertage überprüfen.
Unter anderen deshalb, weil im Bericht das Zieldatum noch einmal zu lesen ist, und 25.12 oder 01.05 sollten schon auffallen.