CallByName İşlevi

Uygulandığı Öğe
Microsoft 365 için Access Access 2024 Access 2021 Access 2019 Access 2016

Bir nesnenin yöntemini yürütür veya bir nesnenin özelliğini ayarlar veya döndürür.

Söz dizimi

CallByName(object , procname, calltype [, args()])

CallByName işlevinin söz diziminde şu bağımsız değişkenler bulunur:

Bağımsız değişken Açıklama
nesne Gerekli. Değişken (Nesne). İşlevin yürütüleceği nesnenin adı.
Procname Gerekli. Değişken (Dize). Nesnenin bir özelliğinin veya yönteminin adını içeren dize ifadesi.
calltype Gerekli. Sabit. Çağrılan yordam türünü temsil eden vbCallType türünde bir sabit.
args() İsteğe bağlı. Değişken (Dizi).

    

Açıklamalar

CallByName işlevi, bir özelliği almak veya ayarlamak ya da çalışma zamanında bir dize adı kullanarak bir yöntemi çağırmak için kullanılır.

Aşağıdaki örnekte, ilk satır bir metin kutusunun MousePointer özelliğini ayarlamak için CallByName kullanır, ikinci satır MousePointer özelliğinin değerini alır ve üçüncü satır metin kutusunu taşımak için Move yöntemini çağırır:

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

Örnek

Not

Aşağıdaki örneklerde, bu işlevin Visual Basic for Applications (VBA) modülünde kullanımı gösterilir. VBA ile çalışma hakkında daha fazla bilgi için, rama'nın yanındaki açılan listede Geliştirici Başvurusu'nu seçin ve arama kutusuna bir veya birden çok terim yazın.

Bu örnekte, komut düğmesinin Move yöntemini çağırmak için CallByName işlevi kullanılır.

Örnek ayrıca düğmeCommand1 () içeren bir form (Form1) ve bir etiket (Label1) kullanır. Form yüklendiğinde, etiketin Caption özelliği çağrılacak yöntemin adına ayarlanır ve bu durumda "Taşı". Düğmeye tıkladığınızda, CallByName işlevi düğmenin konumunu değiştirmek için yöntemini çağırır.

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