Funzioni personalizzate di Excel - Crea funzioni personalizzate definite dall'utente

Come creare funzioni Excel personalizzate? (con esempi)

Per creare una funzione personalizzata, dobbiamo scrivere un codice per il funzionamento delle nostre funzioni, chiamato "UDF". Le funzioni personalizzate sono funzioni definite dall'utente in Excel, quindi per creare queste funzioni, è necessario conoscere a fondo la codifica VBA.

Esempio n. 1: aggiungi due numeri qualsiasi

Ad esempio, se desideri aggiungere due numeri qualsiasi, ti mostreremo una semplice funzione definita dall'utente (UDF).

  • Premi Alt + F11 e inserisci il modulo.
  • Scrivi codice in un modulo per creare una funzione personalizzata.

Qualsiasi funzione personalizzata dovrebbe iniziare con la parola "Funzione", seguita dal nome della formula.

Ogni funzione ha i suoi argomenti o parametri in modo simile anche alle funzioni personalizzate; dobbiamo definire quei parametri. Dato che stiamo aggiungendo solo due numeri, definiamo quei parametri e assegniamo i tipi di dati a quelle variabili argomento.

Una volta definiti i parametri con un tipo di dati, è necessario definire anche i tipi di dati del risultato del risultato. Definiamo il risultato come valore "Integer".

All'interno di questa "Procedura della funzione", scriveremo il codice della formula.

Codice:

Funzione Addition (Num1 As Integer, Num2 As Integer) As Integer Additiona = Num1 + Num2 Fine Funzione

Questo dice che il nome della funzione "Addizione" risultato sarà la somma dei valori Num1 e Num2.

  • Ora torna al foglio di lavoro e inserisci due numeri interi.
  • Aggiungeremo questi due numeri ora. Apri il segno di uguale e inserisci il nome della funzione personalizzata "Addition".

Seleziona il primo e il secondo numero inserendo il separatore come virgola (,).

  • Premi il tasto Invio per ottenere il risultato.

Wow!!! Come la funzione SOMMA, abbiamo ottenuto il risultato della somma di due numeri.

Ora guarda questi numeri.

Prova ad aggiungere questi due numeri adesso.

Abbiamo ottenuto il valore di errore perché il tipo di dati degli argomenti "Num1 e Num2" è "Integer", ovvero questi due argomenti possono contenere valori compresi tra -32767 e 32767, quindi qualsiasi cosa più di questo causerà questi errori.

Ora prova ad aggiungere questi due numeri.

Anche questo causerà un valore di errore inferiore.

Anche se i valori dei singoli argomenti rientrano nel limite del tipo di dati Integer, abbiamo comunque ricevuto questo errore perché la somma totale di questi numeri è maggiore del valore limite intero.

Poiché abbiamo dichiarato anche il tipo di risultato come "intero", anche il risultato dell'addizione di due numeri dovrebbe essere un limite di numero intero.

Esempio n. 2: aggiungi tutti i numeri dispari

Excel non ha alcuna funzione incorporata, che può aggiungere tutti i numeri dispari dall'elenco dei numeri. Ma niente di cui preoccuparsi, creeremo una funzione Excel personalizzata per supportarlo.

Apri la finestra dell'editor VBA e dai un nome alla procedura Funzione.

Assegna il parametro per questa funzione come "Range".

Ciò significa che per questa funzione forniamo il valore di input per questa funzione come "Intervallo" dei valori delle celle.

Poiché abbiamo bisogno di scorrere più di una cella, dobbiamo usare il ciclo "For Each" in VBA, quindi apri il ciclo "For Each".

All'interno di questo ciclo, aggiungi il codice seguente.

Codice:

Funzione AddOdd (Rng As Range) per ogni cella in Rng If cell.Value Mod 2 0 Then AddOdd = AddOdd + cell.Value Next cell End Function

Dobbiamo usare la funzione "MOD" per testare il numero. Quando ogni valore di cella è diviso per il numero 2 e il valore del resto non è uguale a zero, il nostro codice dovrebbe aggiungere tutti i valori dei numeri dispari.

Ora torna al foglio di lavoro e apri la funzione personalizzata di Excel.

Seleziona l'intervallo di numeri da A1 a D8.

Premi il tasto Invio per ottenere il risultato del numero "dispari". "

Quindi, nell'intervallo da A1 a D8, la somma dei numeri dispari è 84.

Esempio n. 3: aggiungi tutti i numeri pari

Allo stesso modo, la funzione sottostante aggiungerà tutti i numeri pari.

Codice:

Funzione AddEven (Rng As Range) per ogni cella in Rng If cell.Value Mod 2 = 0 Then AddEven = AddEven + cell.Value Next cell End Function

Questa funzione aggiungerà solo un numero pari. In questo caso, abbiamo usato la logica se ogni valore di cella è diviso per 2 e il resto è uguale a zero, il codice aggiungerà solo quei valori di cella.

In questo modo, utilizzando la codifica VBA, possiamo creare funzioni personalizzate nostre.

Cose da ricordare

  • Le funzioni create personalizzate non sono altro che funzioni definite dall'utente.
  • Per creare funzioni personalizzate, si dovrebbe avere una conoscenza di capacità avanzate di codifica VBA.
  • Durante la creazione delle funzioni Excel personalizzate, è importante tenere d'occhio gli argomenti e i loro tipi di dati.

Articoli interessanti...