Esercitazione sulle funzioni VBA di Excel: ritorno, chiamata, esempi

Che cos'è una funzione?

Una funzione è un pezzo di codice che esegue un'attività specifica e restituisce un risultato. Le funzioni vengono utilizzate principalmente per eseguire attività ripetitive come la formattazione dei dati per l'output, l'esecuzione di calcoli, ecc.

Supponiamo che tu stia sviluppando un programma che calcola gli interessi su un prestito. È possibile creare una funzione che accetti l'importo del prestito e il periodo di rimborso. La funzione può quindi utilizzare l'importo del prestito e il periodo di rimborso per calcolare gli interessi e restituire il valore.

Perché utilizzare le funzioni

I vantaggi derivanti dall'utilizzo delle funzioni sono gli stessi descritti nella sezione precedente sul perché utilizzare le subroutine.

Regole di denominazione delle funzioni

Le regole per la denominazione funzionano come quelle nella sezione precedente sulle regole per la denominazione delle subroutine.

Sintassi VBA per dichiarare la funzione

Private Function myFunction (ByVal arg1 As Integer, ByVal arg2 As Integer)
    myFunction = arg1 + arg2
End Function

QUI nella sintassi,

Code Action
  • "Funzione privata miaFunzione(...)"
  • Qui la parola chiave "Funzione" viene utilizzata per dichiarare una funzione denominata "miaFunzione" e avviare il corpo della funzione.
  • La parola chiave "Private" viene utilizzata per specificare l'ambito della funzione
  • "ByVal arg1 come numero intero, ByVal arg2 come numero intero"
  • Dichiara due parametri di tipo dati intero denominati 'arg1' e 'arg2'.
  • miaFunzione = arg1 + arg2
  • valuta l'espressione arg1 + arg2 e assegna il risultato al nome della funzione.
  • “Funzione finale”
  • "End Sub" viene utilizzato per terminare il corpo della funzione

Funzione dimostrata con l'esempio:

Le funzioni sono molto simili alla subroutine. La differenza principale tra una subroutine e una funzione è che la funzione restituisce un valore quando viene chiamata. Mentre una subroutine non restituisce un valore, quando viene chiamata. Diciamo che vuoi aggiungere due numeri. Puoi creare una funzione che accetta due numeri e restituisce la somma dei numeri.

  1. Creare l'interfaccia utente
  2. Aggiungi la funzione
  3. Scrivi il codice per il pulsante di comando
  4. Testare il codice

Passo 1) Interfaccia utente

Aggiungi un pulsante di comando al foglio di lavoro come mostrato di seguito

Funzioni VBA e subroutine

Impostare le seguenti proprietà di CommanButton1 come segue.

S / N Controllate Immobili Valore
1 PulsanteComando1 Nome btnAggiungiNumbers
2 Didascalia Aggiungi Numbers Funzione


La tua interfaccia ora dovrebbe apparire come segue

Funzioni VBA e subroutine

Passo 2) Codice funzione.

  1. Premi Alt + F11 per aprire la finestra del codice
  2. Aggiungere il seguente codice
Private Function addNumbers(ByVal firstNumber As Integer, ByVal secondNumber As Integer)
    addNumbers = firstNumber + secondNumber
End Function

QUI nel codice,

Code Action
  • “Aggiunta funzione privataNumbers(...) "
  • Dichiara una funzione privata “addNumbers” che accetta due parametri interi.
  • "ByVal firstNumber come numero intero, ByVal secondNumber come numero intero"
  • Dichiara due variabili parametro firstNumber e secondNumber
  • "InserisciNumbers = primoNumero + secondoNumero”
  • Aggiunge i valori firstNumber e secondNumber e assegna la somma da aggiungereNumbers.

Passaggio 3) Scrivi il codice che chiama la funzione

  1. Fare clic con il tasto destro su btnAddNumbers_Fare clic sul pulsante di comando
  2. Seleziona Visualizza codice
  3. Aggiungere il seguente codice
Private Sub btnAddNumbersFunction_Click()
    MsgBox addNumbers(2, 3)
End Sub

QUI nel codice,

Code Action
“MonsBox aggiungereNumbers(2,3) "
  • Chiama la funzione aggiungiNumbers e passa 2 e 3 come parametri. La funzione restituisce la somma dei due numeri cinque (5)

Passo 4) Esegui il programma, otterrai i seguenti risultati

Funzioni VBA e subroutine

Scarica Excel contenente il codice sopra

Scarica il codice Excel sopra

Sommario

  • Una funzione è un pezzo di codice che esegue un compito specifico. Una funzione restituisce un valore dopo l'esecuzione.
  • Sia le subroutine che le funzioni offrono la riusabilità del codice
  • Sia le subroutine che le funzioni aiutano a scomporre grandi porzioni di codice in piccoli codici gestibili.