Συνάρτηση CallByName

Ισχύει για
Access για Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Εκτελεί μια μέθοδο ενός αντικειμένου ή ορίζει ή επιστρέφει μια ιδιότητα ενός αντικειμένου.

Σύνταξη

CallByName(αντικείμενο , procname, calltype [, args()])

Η σύνταξη της συνάρτησης CallByName έχει τα εξής ορίσματα:

Επιχείρημα Περιγραφή
αντικείμενο Υποχρεωτικό. Παραλλαγή (αντικείμενο). Το όνομα του αντικειμένου στο οποίο θα εκτελεστεί η λειτουργία.
procname Υποχρεωτικό. Μεταβλητή (συμβολοσειρά). Μια παράσταση συμβολοσειράς που περιέχει το όνομα μιας ιδιότητας ή μεθόδου του αντικειμένου.
calltype Υποχρεωτικό. Σταθερά. Σταθερά τύπου vbCallType που αντιπροσωπεύει τον τύπο της διαδικασίας που καλείται.
args() Προαιρετικό. Μεταβλητή (πίνακας).

    

Παρατηρήσεις

Η συνάρτηση CallByName χρησιμοποιείται για τη λήψη ή τον ορισμό μιας ιδιότητας ή για την κλήση μιας μεθόδου κατά το χρόνο εκτέλεσης χρησιμοποιώντας ένα όνομα συμβολοσειράς.

Στο παρακάτω παράδειγμα, η πρώτη γραμμή χρησιμοποιεί την ιδιότητα CallByName για να ορίσει την ιδιότητα MousePointer ενός πλαισίου κειμένου, η δεύτερη γραμμή λαμβάνει την τιμή της ιδιότητας MousePointer και η τρίτη γραμμή καλεί τη μέθοδο Move για να μετακινήσει το πλαίσιο κειμένου:

CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100

Παράδειγμα

Σημείωση

Τα παραδείγματα που ακολουθούν δείχνουν τη χρήση αυτής της συνάρτησης σε μια λειτουργική μονάδα Visual Basic for Applications (VBA). Για περισσότερες πληροφορίες σχετικά με την εργασία με τη VBA, επιλέξτε " Αναφορά προγραμματιστών " στην αναπτυσσόμενη λίστα δίπλα στην επιλογή "Αναζήτηση " και εισαγάγετε έναν ή περισσότερους όρους στο πλαίσιο αναζήτησης.

Αυτό το παράδειγμα χρησιμοποιεί τη συνάρτηση CallByName για να καλέσει τη μέθοδο Move ενός κουμπιού εντολής.

Το παράδειγμα χρησιμοποιεί επίσης μια φόρμα (Form1) με ένα κουμπί (Command1) και μια ετικέτα ().Label1 Όταν φορτωθεί η φόρμα, η ιδιότητα "Λεζάντα " της ετικέτας ορίζεται στο όνομα της μεθόδου κλήσης, σε αυτήν την περίπτωση, της λέξης "Μετακίνηση". Όταν κάνετε κλικ στο κουμπί, η συνάρτηση CallByName καλεί τη μέθοδο για να αλλάξετε τη θέση του κουμπιού.

Option Explicit
Private Sub Form_Load()
  Label1.Caption = "Move"' Name of Move method.
End Sub
Private Sub Command1_Click()
If Command1.Left <> 0 Then
  CallByName Command1, Label1.Caption, vbMethod, 0, 0
Else
  CallByName Command1, Label1.Caption, vbMethod, 500, 500
End If