Καλησπέρα Σάκη!
Σου συνιστώ να μη χρησιμοποιείς ονόματα σε μια βάση που είναι δεσμευμένα από την Access, τη
VBA ή την SQL όπως Date, day κλπ.
Δες τη λίστα στο μήνυμα αυτό:
http://www.ms-office.gr/forum/access...in-access.html
Το συμβάν AfterUpdate αλλά και πολλά άλλα εκτελούνται μόνο όταν προκληθούν από το χρήστη.
Αυτή είναι η στάνταρ ρύθμιση της Access σχεδόν πάντα είναι η καλύτερη επιλογή.
Έστω λοιπόν ότι το πεδίο που θα παίρνει την τιμή πχ. "Τρίτη" έχει το όνομα "txtDay"
θα μπορούσες στο πεδίο αυτό να χρησιμοποιήσεις τον τύπο:
=Format([HM];"dddd")
Αν τώρα πρέπει να αποθηκεύεις την τιμή αυτή τότε:
Στον κώδικα της φόρμας του ημερολογίου ("frmCalendar") άλλαξε την εντολή
cmdOK_Click() με την παρακάτω:
Κώδικας:
Private Sub cmdOK_Click()
On Error Resume Next
Set TheForm = Sender.Parent
If Sender = Me.txtDate Then
Sender = Me.txtDate - Weekday(Me.txtDate, vbMonday) + 1
closeForm
Exit Sub
End If
Sender = Me.txtDate
TheForm.dtDay = Format(Me.txtDate, "dddd")
Sender.SetFocus
Sender.SelStart = 0
Sender.SelLength = 0
closeForm
End Sub
Καλή συνέχεια!
Τάσος