Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Paule am Oktober 09, 2016, 16:31:20

Titel: In Textfeld Datum aktualisieren
Beitrag von: Paule am Oktober 09, 2016, 16:31:20
Hallo,
ich habe ein Formular mit zwei Textfeldern.
Im ersten Textfeld ist ein Datum angegeben. Dieses Textfeld ist an ein Tabellenfeld gebunden vom Typ Datum. Dieses Textfeld hat den Standardwert "Datum()".

Das zweite Textfeld gibt ebenfalls ein Datum aus. Es ist auch an ein Tabellenfeld gebunden vom selben Typ. Es soll sich aus dem Datum des ersten Textfeldes ergeben (+28 Tage) heraus ergeben. Ab und zu wird das erste Datum geändert vom Standardwert weg zu einem anderen Datum. Entsprechend soll sich das zweite Textfeld ("txtInstallmentStart") aktualisieren.

Meine Logik war, bei dem ersten Textfeld ("txtSalesDate") bei dem Ereignis "Nach Aktualisierung" folgenden Code anzugeben:
txtInstallmentStart.Value = DatAdd('t', 28, txtSaleDate)

So wird mir allerdings bei Änderung des txtSaleDate-Feldes immer ein Syntaxfehler im VBA-Editor angezeigt. Gelb markiert wird die Ereignis-Zeile. Ich habe jetzt schon diverse Sachen versucht (z.B. Me!txtInstallmentStart) aber komme einfach nicht zu einer funktionierenden Lösung. Kann ja aber eigentlich nicht so schwer sein... :o
Ich wäre sehr dankbar für einen kurzen Hinweis.

Viele Grüße
Titel: Re: In Textfeld Datum aktualisieren
Beitrag von: MzKlMu am Oktober 09, 2016, 16:41:23
Hallo,
ZitatDas zweite Textfeld gibt ebenfalls ein Datum aus. Es ist auch an ein Tabellenfeld gebunden vom selben Typ.
Da Deiner Beschreibung nach zwischen den beiden Datumsfeldern immer 28 Tage liegen sollen, so ist das 2. Datumsfeld (InstallmentStart) in der Tabelle überflüssig. Dieses Feld wird mit einer Abfrage berechnet. Das ist viel zuverlässiger und ist immer automatisch aktuell.

Das berechnete Feld in der Abfrage sieht dann so aus:
InstallmentStart: SaleDate + 28
In der 1.Zeile einer leeren Spalte der Abfrage. Die Abfrage sollte auch dann alle anderen erforderlichen Felder enthalten und wird dann an Stelle der Tabelle verwendet. Das Feld im Formular ist dann an das berechnete Feld aus der Abfrage zu binden. Zum Addieren von Tagen ist DatAdd nicht erforderlich.
Mehr braucht es nicht.