Izvršava metodu objekta ili postavlja ili vraća svojstvo objekta.
Sintaksa
CallByName(objekt , procname, calltype [, args()])
Sintaksa funkcije CallByName sadrži ove argumente:
| Argument | Opis |
|---|---|
| objekt | Obavezno. Variant (objekt). Naziv objekta na kojem će se funkcija izvršavati. |
| procname | Obavezno. Variant (niz). Niz koji sadrži naziv svojstva ili metode objekta. |
| calltype | Obavezno. Konstanta. Konstanta vrste vbCallType koja predstavlja vrstu procedure koja se poziva. |
| args() | Neobavezno. Variant (polje). |
Napomene
Funkcija CallByName koristi se za dohvaćanje ili postavljanje svojstva ili pozivanje metode u vrijeme izvođenja pomoću naziva niza.
U sljedećem primjeru prvi redak koristi CallByName za postavljanje svojstva MousePointer za tekstni okvir, drugi redak dohvaća vrijednost svojstva MousePointer , a treći redak poziva metodu premještanja za premještanje tekstnog okvira:
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100
Primjer
Napomena
Primjeri koji slijede prikazuju korištenje te funkcije u modulu jezika Visual Basic for Applications (VBA). Da biste pronašli dodatne informacije o radu s VBA-om, na padajućem popisu uz stavku Traži odaberite stavku Referenca za razvojne inženjere pa unesite jedan ili više izraza u okvir pretraživanja.
U ovom se primjeru pomoću funkcije CallByName poziva metoda premještanja naredbenog gumba.
U primjeru se koristi i obrazac (Form1) s gumbom (Command1) i oznakom (Label1). Nakon učitavanja obrasca svojstvo Caption oznake postavlja se na naziv metode koja se poziva, u ovom slučaju "Premjesti". Kada kliknete gumb, funkcija CallByName poziva način za promjenu položaja gumba.
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