Καλημέρα σε όλους!
Αγαπητέ φίλε/φίλη (
δεν ξέρω το όνομα σου) ,
θέλω στο σημείο αυτό να σου πω το ταπεινό μου μπράβο στην προσπάθεια που κάνεις
πάνω στην Access αλλά και για την ενεργή συμμετοχή σου στο φόρουμ!
Ας ξεκινήσουμε λοιπόν
Για να ελέγξεις τα συμβάντα των 168 TextBox της φόρμας σου θα χρειαστείς ένα
Class Module (Insert > Class Module) με το όνομα:
clsTextBoxes που θα περιέχει τον παρακάτω κώδικα:
Κώδικας:
Option Compare Database
Option Explicit
Private WithEvents AccTextBox As Access.TextBox
Public Property Set TheTextBox(ByVal TheTextBox As Access.TextBox)
Set AccTextBox = TheTextBox
AccTextBox.OnDblClick = "[Event Procedure]"
'AccTextBox.AfterUpdate = "[Event Procedure]"
'και όποιο άλλο συμβάν χρειαστείς
End Property
Public Property Get TheTextBox() As Access.TextBox
Set TheTextBox = AccTextBox
End Property
'Private Sub AccTextBox_AfterUpdate()
' 'Ο κώδικας σου
'End Sub
Private Sub AccTextBox_DblClick(Cancel As Integer)
Cancel = True
DoCmd.OpenForm FormName:="frmRdv", WindowMode:=acDialog ', OpenArgs:= πχ. AccTextBox.Tag...
'Προσάρμοσε το έτσι που να ανοίγει η φόρμα με την επιθυμητή εγγραφή.
End Sub
Κατόπιν, στο Module1 ή σε κάποιο άλλο κοινό Module πέρασε μια
public μεταβλητή με το όνομα "
frm"
δηλ.:
Κώδικας:
Option Compare Database
Option Explicit
Public frm As Access.Form
' κώδικας ....................
'..................................
Στην κορυφή του κώδικα της φόρμας"frmPlan", δήλωσε μια μεταβλητή πίνακα (Array)
που θα αναφέρεται στο Class Module "
clsTextBoxes" όπως φαίνεται παρακάτω:
Κώδικας:
Option Compare Database
Option Explicit
Dim TextBoxes(0 To 168) As New clsTextBoxes
και στο OnLoad() της φόρμας:
Κώδικας:
Private Sub Form_Load()
Dim i%, ctl As Access.Control
Set frm = Me.Form
For Each ctl In Me.Section(0).Controls
If TypeOf ctl Is Access.TextBox Then
If ctl.Tag <> vbNullString Then
Set TextBoxes(i).TheTextBox = ctl
i = i + 1
End If
End If
Next
Call FillWeeklyPlan(Me)
End Sub
Αφου κάνεις τα παραπάνω, θα μπορείς με διπλό κλικ σε οποιοδήποτε πλαίσιο κείμενου στη λεπτομέρεια της φόρμας "frmPlan" να ανοίγεις τη φόρμα "frmRDV"
Ξεκίνα μ αυτά και φυσικά αν χρειαστείς κάτι εδώ είμαστε
Φιλικά
Τάσος