Met deze functie voert u een methode van een object uit, of wordt een eigenschap van een object ingesteld of geretourneerd.
Syntaxis
CallByName ( object , procedurenaam, typeaanroep [, argumenten()])
De syntaxis van de functie CallByName heeft deze argumenten:
Argument |
Beschrijving |
object |
Vereist. Variant (Object). De naam van het object waarop u de functie wilt uitvoeren. |
procedurenaam |
Vereist. Variant (Tekenreeks). Een tekenreeksexpressie die de naam bevat van een eigenschap of methode van het object. |
typeaanroep |
Vereist. Constante. Een constante van het type vbCallType die het type procedure aangeeft dat wordt aangeroepen. |
argumenten () |
Optioneel. Variant (Matrix). |
Opmerkingen
De functie CallByName wordt gebruikt om een eigenschap op te vragen of in te stellen, of om tijdens runtime een methode aan te roepen via de naam van een tekenreeks.
In het volgende voorbeeld wordt op de eerste regel CallByName gebruikt om de eigenschap MousePointer van een tekstvak in te stellen, met de tweede regel wordt de waarde van de eigenschap MousePointer opgevraagd en met de derde regel wordt de methode Move aangeroepen om het tekstvak te verplaatsen:
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet) CallByName Text1, "Move", vbMethod, 100, 100
Voorbeeld
Opmerking: In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.
In dit voorbeeld wordt de functie CallByName gebruikt om de methode Move van een opdrachtknop aan te roepen.
In het voorbeeld wordt ook een formulier (Form1) gebruikt, met een knop (Command1) en een label (Label1). Wanneer het formulier wordt geladen, wordt de eigenschap Caption van het label ingesteld op de naam van de methode die moet worden aangeroepen, in dit geval 'Move'. Wanneer u op de knop klikt, wordt de methode aangeroepen door CallByName om de locatie van de knop te wijzigen.
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