Funktionen CallByName

Udfører en metode for et objekt eller angiver eller returnerer en egenskab for et objekt.

Syntaks

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

Syntaksen for funktionen CallByName har følgende argument:

Argument

Beskrivelse

object

Påkrævet. Variant (Object). Navnet på det objekt, som funktionen udføres på.

procname

Påkrævet. Variant (String). Et strengudtryk, der indeholder navnet på en egenskab eller metode for objektet.

calltype

Påkrævet. Constant. En konstant af typen vbCallType, der angiver den type procedure, der kaldes.

args ()

Valgfri. Variant (Array).


Bemærkninger

Funktionen CallByName anvendes til at hente eller angive en egenskab eller til at kalde en metode på kørselstidspunktet ved hjælp af et strengnavn.

I følgende eksempel anvender den første linje CallByName til at angive egenskaben MousePointer for en tekstboks, den anden linje henter værdien af egenskaben MousePointer, og den tredje linje anvender metoden Move til at flytte tekstboksen:

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

Eksempel

Bemærk: I de følgende eksempler demonstreres brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Du kan få yderligere oplysninger om arbejde med VBA ved at vælge Udviklerreference på rullelisten ud for Søg og indtaste et eller flere udtryk i søgeboksen.

I dette eksempel anvendes funktionen CallByName til at starte metoden Move for en kommandoknap.

I eksemplet anvendes også en formular (Form1) med en knap (Command1) og en etiket (Label1). Når formularen indlæses, angives egenskaben Caption for etiketten til navnet på den metode, der skal startes, i dette tilfælde "Move". Når du klikker på knappen, starter funktionen CallByName metoden for at ændre placeringen af knappen.

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
Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×