Funzione VBA ROUND

Funzione Round VBA di Excel

La funzione di arrotondamento in VBA è una funzione matematica che, come suggerisce il nome stesso, arrotonda per eccesso o per difetto il numero dato allo specifico insieme di cifre decimali specificato dall'utente, questa funzione utilizza la logica di arrotondamento anche, il che significa che prende 5 come riferimento e qualsiasi numero con l'ultima cifra dopo il decimale è inferiore a 5, quindi viene arrotondato per difetto e viceversa.

È possibile arrotondare un numero a due cifre decimali, tre cifre decimali o nessun decimale. Ad esempio, se hai il numero 5.8697. Se arrotondi il numero a un decimale a due cifre sarà 5,87 se arrotondi a tre cifre allora verrà arrotondato a 5,870, se desideri arrotondare a zero allora sarà 6.-

Nei numeri bancari, tutte le cifre decimali inferiori a 0,5 verranno arrotondate per difetto al valore intero precedente e tutte le cifre decimali maggiori o uguali a 0,5 verranno arrotondate al valore intero successivo.

Spero che tu abbia usato la funzione ROUND nel foglio di lavoro. Anche in VBA possiamo usare questa funzione ma abbiamo una differenza con queste funzioni. Vedremo la differenza tra queste due funzioni più avanti in questo articolo.

Sintassi

Dai un'occhiata alla sintassi della funzione Round.

Numero: questo è il numero che stiamo cercando di arrotondare.

[Numero di cifre dopo i decimali]: quante cifre sono necessarie dopo il valore decimale.

Esempi

Puoi scaricare questo modello Excel con funzione rotonda VBA qui - Modello Excel con funzione rotonda VBA

Supponiamo di avere il numero 4.534 e di voler arrotondare a due cifre.

Segui i passaggi seguenti.

Passaggio 1: dichiara la variabile come Variant.

Codice:

 Sub Round_Example1 () Dim K As Variant End Sub 

Passaggio 2: per questa variabile " k " assegnare il valore tramite la funzione ROUND.

Codice:

 Sub Round_Example1 () Dim K As Variant K = Round (End Sub 

Passaggio 3: il numero non è altro che il numero che stiamo cercando di arrotondare, in questo caso il numero è 4.534

Codice:

 Sub Round_Example1 () Dim K As Variant K = Round (4.534, End Sub 

Passaggio 4: quante cifre dobbiamo arrotondare, in questo caso dobbiamo arrotondare a 2 cifre .

Codice:

 Sub Round_Example1 () Dim K As Variant K = Round (4.534, 2) End Sub 

Passaggio 5: ora mostra il valore della variabile "k" nella finestra di messaggio VBA.

Codice:

 Sub Round_Example1 () Dim K As Variant K = Round (4.534, 2) MsgBox K End Sub 

Esegui questo codice e guarda cosa otteniamo.

Abbiamo ottenuto il risultato come 4,53 quando abbiamo arrotondato a 2 cifre.

Ora cambierò il numero da 4.534 a 4.535 . Guarda cosa succede adesso.

Codice:

 Sub Round_Example1 () Dim K As Variant K = Round (4.535, 2) MsgBox K End Sub 

Ora esegui il codice e guarda qual è il risultato.

Abbiamo ottenuto il risultato come 4,54 un decimale superiore al valore precedente di 4,53. Questo perché in questo esempio abbiamo fornito il numero come 4.535, quindi dopo il numero 3 il numero successivo è 5 quindi viene arrotondato al numero successivo, quindi 3 diventa 4.

Ora fornirò il numero come 2.452678 e cercherò di arrotondare a 3 cifre.

Codice:

 Sub Round_Example2 () Dim K As Variant K = Round (2.452678, 3) MsgBox K End Sub 

Esegui questo codice per vedere il risultato.

Il risultato è 2.453 .

2.45 2678 Qui i numeri dopo la seconda cifra decimale sono 2678. Dopo il numero 2, il numero successivo è 6, che è maggiore o uguale a 5, quindi viene arrotondato per eccesso al numero decimale successivo.

Ora userò lo stesso numero per arrotondare a zero e vedere cosa succede.

Codice:

 Sub Round_Example3 () Dim K As Variant K = Round (2.452678, 0) MsgBox K End Sub 

Esegui il codice e guarda cosa otteniamo.

Dato che ho usato il round a zero abbiamo ottenuto il risultato come 2.

Il motivo per cui abbiamo ottenuto il risultato come 2 perché qui il primo numero decimale è 4 che è inferiore a 0,5 quindi è arrotondato per difetto.

Differenza tra Excel e la funzione VBA ROUND

Ci sono principalmente 2 differenze.

# 1 - Sintassi di entrambe le funzioni:

Se guardi la sintassi di entrambe le funzioni, qui abbiamo una differenza.

Sintassi Excel Round: Round (numero, numero di cifre dopo i decimali)
Sintassi VBA Round: Round (numero, [numero di cifre dopo i decimali])

In Excel entrambi gli argomenti sono obbligatori ma in VBA il secondo argomento è facoltativo.

In VBA se ignori il secondo argomento, l'argomento predefinito è zero, quindi otterremo il numero intero.

# 2 - Risultati:

Il risultato dato da queste due funzioni è diverso. Di seguito sono riportati alcuni esempi