Questo tutorial ti insegnerà come chiamare una funzione da una sottoprocedura in VBA.
Quando crei una funzione in VBA, puoi utilizzare la funzione come UDF (funzione definita dall'utente) nella cartella di lavoro di Excel oppure puoi chiamarla da una procedura secondaria.
Chiamare una funzione da una procedura secondaria
Dopo aver creato una funzione, è possibile chiamarla da qualsiasi altra parte del codice utilizzando una procedura secondaria per chiamare la funzione.
Considera la funzione seguente:
123 | Funzione GetValue() As IntegerOttieniValore = 50Fine funzione |
Poiché le funzioni restituiscono un valore, per chiamare la funzione dobbiamo passare il valore a qualcosa. In questo caso passeremo il valore a una variabile:
123456789 | Sub TestValues()Dim intVal As Integer'esegui la funzione GetValueintVal = GetValue()'e mostra il valoreMsgBox intValFine sottotitolo |
Chiamare una funzione con parametri
Se la funzione dispone di parametri, sarà necessario passare questi parametri dalla procedura secondaria alla funzione per ottenere il valore corretto.
123 | Funzione GetValue(intA as Integer) As IntegerOttieniValore = intA * 5Fine funzione |
Per chiamare questa funzione, possiamo eseguire la seguente procedura Sub.
123 | Sub TestValues()MsgBox GetValue(10)Fine sottotitolo |
Questa procedura secondaria invierà il valore di 10 alla funzione, che a sua volta moltiplicherà tale valore per 5 e restituirà il valore a 50 alla procedura secondaria.