Chiamare una Subroutine con Call o senza
Per chiamare una subroutine, e possibile utilizzare lo statement Call, o più semplicemente utilizzare il nome della subroutine:
Call MiaRoutine(Parametro1, Parametro2)
oppure
MiaRoutine Parametro1, Parametro2
Nel secondo caso, non vengono utilizzare le parentesi per il passaggio dei parametri.
Utilizzandole, il VB assume che state utilizzando un operatore.
In questo caso, valuta i paramentri e ne passa i valori alla routine, invece di passarli per referenza.
Infatti se proviamo con questo codice:
Call MiaRoutine(Text1)
alla MiaRoutine sara' passato l'oggetto TextBox.
Nell'altro caso (utilizzando le parentesi senza il Call), VB valutera' il valore di Text1 (in questo caso la
proprietà di default e' Text) passandone il valore alla routine:
MiaRoutine (Text1)
quindi MiaRoutine non ricevera' l'oggetto TextBox, ma il valore della sua proprietà Text.
Questo causerà la generazione di un errore in quanto la routine aspetta un oggetto al
posto di una stringa.
Testato su: Windows 98, Win Me, Windows 2000 Professional