Esegue un metodo di un oggetto oppure imposta o restituisce una proprietà di un oggetto.

Sintassi

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

La sintassi della funzione CallByName ha gli argomenti seguenti:

Argomento

Descrizione

oggetto

Obbligatorio. Variant (Object). Nome dell'oggetto su cui verrà eseguita la funzione.

nomeprogetto

Obbligatorio. Variant (String). Espressione stringa contenente il nome di una proprietà o di un metodo dell'oggetto.

tipochiamata

Obbligatorio. Costante. Costante di tipo vbCallType che rappresenta il tipo di routine chiamata.

args ()

Facoltativo. Variant (Array).

Note

La funzione CallByName viene usata per ottenere o impostare una proprietà o per richiamare un metodo in fase di esecuzione usando un nome stringa.

Nell'esempio seguente la prima riga usa CallByName per impostare la proprietà MousePointer di una casella di testo, la seconda riga ottiene il valore della proprietà MousePointer e la terza riga richiama il metodo Move per spostare la casella di testo:

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

Esempio

Nota: Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.

Questo esempio usa la funzione CallByName per richiamare il metodo Move di un pulsante di comando.

Nell'esempio vengono inoltre usati una maschera (Form1) con un pulsante (Command1) e un'etichetta (Label1). Quando la maschera viene caricata, la proprietà Caption dell'etichetta viene impostata sul nome del metodo da richiamare, in questo caso "Move". Quando si fa clic sul pulsante, la funzione CallByName richiama il metodo per modificare la posizione del pulsante.

Option ExplicitPrivate Sub Form_Load()  Label1.Caption = "Move"' Name of Move method.End SubPrivate Sub Command1_Click()If Command1.Left <> 0 Then  CallByName Command1, Label1.Caption, vbMethod, 0, 0Else  CallByName Command1, Label1.Caption, vbMethod, 500, 500End If

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.