Fungsi CallByName

Berlaku Untuk
Access untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Mengeksekusi metode objek, atau mengatur atau mengembalikan properti objek.

Sintaks

CallByName(objek , procname, tipe panggilan [, args()])

Sintaks fungsi CallByName memiliki argumen berikut:

Argumen Deskripsi
objek Diperlukan. varian (objek). Nama objek tempat fungsi akan dijalankan.
procname Diperlukan. varian (string). Ekspresi string yang berisi nama properti atau metode objek.
tipe panggilan Diperlukan. Konstan. Konstanta tipe vbCallType yang mewakili tipe prosedur yang dipanggil.
argumen() Opsional. varian (array).

    

Keterangan

Fungsi CallByName digunakan untuk mendapatkan atau mengatur properti, atau untuk memanggil metode saat proses menggunakan nama string.

Dalam contoh berikut, baris pertama menggunakan CallByName untuk mengatur properti MousePointer dari kotak teks, baris kedua mendapatkan nilai properti MousePointer , dan baris ketiga memanggil metode Move untuk memindahkan kotak teks:

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

Contoh

Catatan

Contoh yang mengikuti demonstrasi penggunaan fungsi ini dalam modul Visual Basic for Applications (VBA). Untuk informasi selengkapnya tentang bekerja dengan VBA, pilih Referensi Pengembang di daftar turun bawah di samping Cari dan masukkan satu istilah atau lebih di kotak pencarian.

Contoh ini menggunakan fungsi CallByName untuk memanggil metode Move dari tombol perintah.

Contoh ini juga menggunakan formulir (Form1) dengan tombol (Command1), dan label ().Label1 Saat formulir dimuat, properti Caption label diatur ke nama metode yang akan dipanggil, dalam hal ini, "Pindahkan". Saat Anda mengklik tombol, fungsi CallByName memanggil metode untuk mengubah lokasi tombol.

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