![]() |
||
![]() |
Im Formular das Datum des nΣchsten Wochenendes berechnenIch verwalte eine Wochenenddienst-Liste fⁿr ZahnΣrzte mit Access 97. In dieser Liste ist das einzugebende Datum immer genau sieben Tage spΣter als das zuletzt eingegebene Datum. Nun m÷chte ich, da▀ Access automatisch das richtige Datum eintrΣgt, jedoch bin ich mit Feldwerten nicht weitergekommen. Mit Standardwerten fⁿr Felder geht da tatsΣchlich nichts. Wenn Sie die Berechnung aber direkt im Formular unterbringen, ist Access durchaus in der Lage, Ihrem Wunsch vollkommen zu entsprechen. Um das Formular anzupassen, wΣhlen Sie im Datenbank-Fenster die Registerkarte ╗Formulare½ aus, markieren das Formular und klicken auf den Button ╗Entwurf½. ╓ffnen Sie dann das Eigenschaften-Fenster mit dem Menⁿbefehl ╗Ansicht | Eigenschaften½. Dort finden Sie in der Registerkarte ╗Ereignis½ das ╗Vor-Eingabe-Ereignis½. Dieses Ereignis fⁿhrt Access aus, wenn Sie das erste Zeichen in den Datensatz eingeben. Damit Access noch vor der Eingabe das richtige Datum anzeigt, programmieren Sie an dieser Stelle die Berechnung des Datums. Dazu klicken Sie auf den Button hinter dem Eingabefeld des Vor-Eingabe-Ereignisses und tippen das Listing ╗Dienstliste½ (im Kasten rechts) ein. In diesem Programm berechnet der ╗Select½-Befehl das bislang gr÷▀te Datum in der Tabelle und speichert das Ergebnis in der Variable ╗MaxDat½. Anschlie▀end addiert die Funktion ╗DateAdd()½ sieben Tage hinzu und legt das Datum im Formularfeld ╗[Datum]½ ab. Ein Beispiel finden Sie in der Datei ╗DIENSTLISTE.MBD½ auf der CHIP-Heft-CD. Listing ½Dienstliste╗ Private Sub Form_BeforeInsert (Cancel As Integer) Dim DB As Database Dim Rs As Recordset Set DB = CurrentDb Set Rs = DB.OpenRecordset ("select Max (Datum) as MaxDat from Dienstliste") Forms![Dienstliste]![Datum] = DateAdd ("d",7,CDate (Rs![MaxDat])) End Sub |
![]() |