Come arrotondare i valori in vba (con esempi)


È possibile utilizzare il metodo RoundUp in VBA per arrotondare i valori.

Questa funzione utilizza la seguente sintassi di base:

 Sub RoundUpValue()
    Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), 0)
End Sub

Questo particolare esempio arrotonderà il valore nella cella A1 al numero intero più vicino e visualizzerà il risultato nella cella B1 .

Si noti che il secondo argomento del metodo RoundUp specifica il numero di cifre da arrotondare per eccesso dove:

  • -3 giri al migliaio successivo
  • -2 arrotonda al centinaio più vicino
  • -1 arrotonda per eccesso alla decina più vicina
  • 0 arrotonda al numero intero più vicino
  • 1 arrotonda al decimo più vicino (una cifra decimale)
  • 2 arrotondato al centesimo più vicino (due cifre decimali)
  • 3 arrotondato al millesimo più vicino (tre cifre decimali)

E così via.

Gli esempi seguenti mostrano come utilizzare nella pratica il metodo RoundUp .

Esempio 1: arrotondare al numero intero più vicino in VBA

Possiamo creare la seguente macro per arrotondare il valore nella cella A1 al numero intero più vicino e visualizzare il risultato nella cella B1 :

 Sub RoundUpValue()
    Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), 0)
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

Tieni presente che il valore 1432,78 nella cella A1 è stato arrotondato al numero intero più vicino di 1433 nella cella B1 .

Esempio 2: arrotondamento al centinaio più vicino in VBA

Possiamo creare la seguente macro per arrotondare il valore nella cella A1 al centinaio più vicino e visualizzare il risultato nella cella B1 :

 Sub RoundUpValue()
    Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), -2)
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

Tieni presente che il valore 1432,78 nella cella A1 è stato arrotondato al centinaio di 1500 più vicino nella cella B1 .

Esempio 3: arrotondamento al decimo più vicino in VBA

Possiamo creare la seguente macro per arrotondare il valore nella cella A1 al decimo più vicino (cioè una cifra decimale) e visualizzare il risultato nella cella B1 :

 Sub RoundUpValue()
    Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), 1)
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

Tieni presente che il valore 1432,78 nella cella A1 è stato arrotondato al decimo più vicino di 1432,8 nella cella B1 .

Nota : qui è possibile trovare la documentazione completa per il metodo VBA RoundUp .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:

VBA: come scrivere le funzioni SOMMA.SE e SOMMA.FS
VBA: come scrivere le funzioni COUNTIF e COUNTIFS
VBA: come scrivere le funzioni MEDIA.SE e MEDIA.SE

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *