Εκτελεί μια μέθοδο ενός αντικειμένου ή ορίζει ή επιστρέφει μια ιδιότητα ενός αντικείμενο.
Σύνταξη
CallByName ( αντικείμενο ; όνομα_ονόματος; τύπος_κλήσης [, args()])
Η σύνταξη της συνάρτησης CallByName περιλαμβάνει τα παρακάτω ορίσματα:
Όρισμα |
Περιγραφή |
αντικείμενο |
Υποχρεωτικό. Μεταβλητή (Αντικείμενο). Το όνομα του αντικειμένου στο οποίο θα εκτελεστεί η συνάρτηση. |
όνομα_προϊόντος |
Υποχρεωτικό. Μεταβλητή (Συμβολοσειρά). Μια παράσταση συμβολοσειράς που περιέχει το όνομα μιας ιδιότητας ή μεθόδου του αντικειμένου. |
τύπος κλήσης |
Υποχρεωτικό. Σταθερά. Μια σταθερά τύπου vbCallType που αντιπροσωπεύει τον τύπο της διαδικασίας που καλείται. |
args () |
Προαιρετικό. Μεταβλητή (Πίνακας). |
Παρατηρήσεις
Η συνάρτηση CallByName χρησιμοποιείται για τη λήψη ή τον ορισμό μιας ιδιότητας ή για την κλήση μιας μεθόδου κατά την εκτέλεση χρησιμοποιώντας ένα όνομα συμβολοσειράς.
Στο παρακάτω παράδειγμα, η πρώτη γραμμή χρησιμοποιεί την CallByName για να ορίσει την ιδιότητα MousePointer ενός πλαισίου κειμένου, η δεύτερη γραμμή λαμβάνει την τιμή της ιδιότητας MousePointer και η τρίτη γραμμή καλεί τη μέθοδο Μετακίνηση για να μετακινήσει το πλαίσιο κειμένου:
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet) CallByName Text1, "Move", vbMethod, 100, 100
Παράδειγμα
Σημείωση: Παραδείγματα που ακολουθούν δείχνουν τη χρήση αυτής της συνάρτησης σε μια λειτουργική μονάδα Visual Basic for Applications (VBA). Για περισσότερες πληροφορίες σχετικά με την εργασία με τη VBA, επιλέξτε Αναφορά προγραμματιστών στην αναπτυσσόμενη λίστα δίπλα στην Αναζήτηση και πληκτρολογήστε έναν ή περισσότερους όρους στο πλαίσιο αναζήτησης.
Αυτό το παράδειγμα χρησιμοποιεί τη συνάρτηση CallByName για να ενεργοποιήσει τη μέθοδο Μετακίνηση ενός κουμπιού εντολής.
Το παράδειγμα χρησιμοποιεί επίσης μια φόρμα (Form1) με ένα κουμπί (Command1) και μια ετικέτα (Label1). Κατά τη φόρτωση της φόρμας, η ιδιότητα Caption της ετικέτας ορίζεται στο όνομα της μεθόδου κλήσης, σε αυτή την περίπτωση, "Μετακίνηση". Όταν κάνετε κλικ στο κουμπί, η συνάρτηση 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