Καλησπέρα στην παρέα
Γιάννη στη φόρμα του αρχείου που επισυνάπτω πρόσθεσα και το πεδίο Δ, το οποίο συμπεριφέρεται όπως και το Γ.
Για να διευκολύνω την προσθήκη και άλλων πεδίων διαμόρφωσα τον κώδικα ως εξής:
Κώδικας:
Option Compare Database
Option Explicit
Dim varC As Variant
Dim strName As String
Dim blnIsZero As Boolean
Private Sub Form_Current()
If blnIsZero Then
Me.Controls(strName) = varC
Me!Β = "ΤΕΤΑΡΤΗ"
End If
blnIsZero = False
End Sub
Private Sub Γ_AfterUpdate()
subCreateNewRecord
End Sub
Private Sub Γ_Enter()
subOldValue
End Sub
Public Sub subOldValue()
varC = Me.ActiveControl
strName = Me.ActiveControl.Name
End Sub
Public Sub subCreateNewRecord()
If Me.Controls(strName) = 0 Then
blnIsZero = True
DoCmd.GoToRecord , , acNewRec
End If
End Sub
Private Sub Δ_AfterUpdate()
subCreateNewRecord
End Sub
Private Sub Δ_Enter()
subOldValue
End Sub
Για κάθε νέο πεδίο (πχ Ε) που θα προσθέτεις απαιτείται να δημιουργήσεις:
1. Μία ρουτίνα Enter: Σχεδίαση της φόρμας > Επιλογή του Ε > Φύλλο ιδιοτήτων του Ε > Καρτέλα συμβάν > Με την είσοδο > Κλικ στο κουμπί με τις τελείες > Δόμηση κώδικα > Αντιγραφή ανάμεσα στις δύο γραμμές που δημιουργεί η access της λέξης: subOldValue .
2. Μία ρουτίνα AfterUpdate: Σχεδίαση της φόρμας > Επιλογή του Ε > Φύλλο ιδιοτήτων του Ε > Καρτέλα συμβάν > Μετά από ενημέρωση > Κλικ στο κουμπί με τις τελείες > Δόμηση κώδικα > Αντιγραφή ανάμεσα στις δύο γραμμές που δημιουργεί η access της λέξης: subCreateNewRecord
Πριν κλείσεις το παράθυρο του κώδικα στο μενού Debug επίλεξε την εντολή Compile.
Φιλικά/Γιώργος
ΥΓ Αν και η περιέργεια σκότωσε τη γάτα, γιατί δε δημιουργείς τις νέες εγγραφές με τον κλασικό τρόπο;