Καλημέρα Παντελή,
DoCmd.OpenForm strForname, , , , , ,
FormOpemArgs
Στη μεταβλητή
FormOpemArgs την έχουμε περάσει σε προηγούμενη γραμμή του κώδικα με τις τιμές:
Me.Επώνυμο & ";" & Me.Υπηρεσία1 (μετ.
"ΜΠΟΥΔΑΛΑΚΗΣ;ΤΑΜ2")
Δες τη βοήθεια της
VBA στην Access σχετικά με το
DoCmd.OpenForm Method
(στον
VBE κάνε κλικ πάνω στη λέξη
"OpenForm" και πάτησε F1):
Με άλλα λόγια, μπορούμε στο τελευταίο όρισμα της
.OpenForm, το OpenArgs
να περάσουμε τις πληροφορίες πού θέλουμε στη φόρμα που θα ανοιχτεί.
Οι πληροφορίες αυτές με το άνοιγμα της φόρμας υπάρχουν ήδη εκεί στην ιδιότητα
OpenArgs.
Στην περίπτωση σου οι πληροφορίες αυτές αποστέλλονται στη φόρμα που θέλεις να ανοίξεις πχ.
ΥΠ_ΣΑΒ και σε περιμένουν να τις επεξεργαστείς!
Πως;
Αυτό που πρέπει να κάνεις είναι να περάσεις τις πληροφορίες που έστειλες με τη μεταβλητή
FormOpemArgs (μετ.
"ΜΠΟΥΔΑΛΑΚΗΣ;ΤΑΜ2") στα πεδία της φόρμας
ΥΠ_ΣΑΒ κατά το άνοιγμα της περνώντας της τον παρακάτω κώδικα:
Κώδικας:
Private Sub Form_Open()
Dim MyValues() As String
If Not IsNull(Me.OpenArgs) Then
MyValues = Split(Me.OpenArgs, ";")
Me.txtArgs1 = MyValues(0) 'όπου Me.txtArgs1 = το πεδίο που θα πάρει την πρώτη τιμή
Me.txtArgs2 = MyValues(1) 'όπου Me.txtArgs2 = το πεδίο που θα πάρει τη δεύτερη τιμή
End If
End Sub
Φιλικά
Τάσος