Elite Veteran
Beiträge: 876
Ort: Wien | Hallo!
Remigio
...
Also komme ich nicht drumrum den wert in einer tabelle zu speichern.
Hm.. das war genau das was ich eben vermeiden wollte.
Kann ich mit vba eine tabelle erstellen, den wert speichern, dann den wert als Standard dem Feld zuweisen und dann die Tabelle wieder löschen?
Wenn ja, wie würde der VBA code ungefähr aussehen?
...
Dann würde ich statt einer Tabelle eher ein DAO-Property verwenden. Nehmen wir an, dein Steuerelement=Datumstextfeld heißt "Foo". Das erste Schnippsel hier wäre der Code im Ereignis "Nach Aktualisierung" von Foo, das zweite "Beim Öffnen" des Formulares. Es sollte funktionieren, wenn du das ins Formularmodul kopierst und "Foo" überall durch den echten Namen ersetzt.
Private Sub Foo_AfterUpdate()
On Error GoTo myError
Dim db As DAO.Database
Dim doc As DAO.Document
Dim prp As DAO.Property
Set db = CurrentDb
Set doc = db.Containers("Forms").Documents(Me.Name)
doc.Properties!prpDefaultDate = Me!Foo
myExit:
Exit Sub
myError:
Select Case Err.Number
Case 3270
Set prp = doc.CreateProperty("prpDefaultDate", dbDate, Me!Foo)
doc.Properties.Append prp
Resume Next
Case Else
MsgBox "Ausnahme Nr. " & Err.Number & ". " & Err.Description
Resume myExit
Resume
End Select
End Sub
Private Sub Form_Open(Cancel As Integer)
On Error GoTo myError
Me!Foo = CurrentDb.Containers("Forms").Documents(Me.Name).Properties!prpDefaultDate
myExit:
Exit Sub
myError:
Select Case Err.Number
Case 3270
Resume myExit
Case Else
MsgBox "Ausnahme Nr. " & Err.Number & ". " & Err.Description
Resume myExit
Resume
End Select
End Sub
----- Servus
Karl
*********
Access-Entwickler-Konferenz: https://www.donkarl.com/?aek
Access DevCon Vienna: https://www.donkarl.com/devcon
Access Forever: https://www.accessforever.org
Access News: https://www.youtube.com/playlist?list=PLVCeBbJIMDvdJ8ghMbEakJ6_EQyvy... |