Come restituire un valore da una funzione vba (con esempi)
Per restituire un valore da una funzione in VBA, è necessario assegnare il valore al nome della funzione.
Ad esempio, possiamo creare la seguente funzione per dividere due valori e quindi restituire il risultato della divisione:
Function DivideValues(x,y)
DivideValues = x / y
End Function
Il nome di questa funzione è DivideValues , quindi per restituire un valore da questa funzione dobbiamo assegnare il risultato di x/y a una variabile con lo stesso nome da DivideValues .
Se la tua funzione prevede la logica Se Else , puoi assegnare il valore al nome della funzione più volte.
Ad esempio, puoi creare la seguente funzione che restituisce “Impossibile dividere per zero” se tenti di dividere per zero o semplicemente restituire il risultato della divisione:
Function DivideValues(x,y)
If y = 0 Then
DivideValues = " Cannot divide by zero "
Else
DivideValues = x / y
End If
End Function
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: come restituire un valore da una funzione VBA
Supponiamo di voler creare una funzione in VBA per dividere il valore della cella A2 per il valore della cella B2 :
Possiamo creare la seguente funzione per fare ciò:
Function DivideValues(x,y)
DivideValues = x / y
End Function
Quando eseguiamo questa macro, riceviamo il seguente output:
La funzione restituisce un valore di 5 , che è il risultato di 50 diviso per 10.
Potremmo anche creare una funzione che utilizzi la logica If Else per verificare innanzitutto se il valore per cui stiamo dividendo non è uguale a zero:
Function DivideValues(x,y)
If y = 0 Then
DivideValues = " Cannot divide by zero "
Else
DivideValues = x / y
End If
End Function
Se modifichiamo il valore nella cella B2 e poi utilizziamo questa funzione per eseguire una divisione, riceveremo il seguente risultato:
Poiché abbiamo tentato di dividere per zero, la funzione restituisce “Impossibile dividere per zero”.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:
Come commentare un blocco di codice in VBA
Come verificare se il file esiste utilizzando VBA
Come creare cartelle utilizzando VBA