VBA ROUND-functie

Excel VBA Round-functie

Round-functie in VBA is een wiskundige functie die, zoals de naam zelf suggereert, het opgegeven getal naar boven of beneden afrondt naar de specifieke set decimalen die door de gebruiker zijn opgegeven.Deze functie gebruikt de logica van afronden, wat betekent dat er 5 nodig is als de referentie en elk nummer met het laatste cijfer achter het decimaalteken lager is dan 5, dan wordt het naar beneden afgerond en vice versa.

U kunt een getal afronden tot een decimaal van twee cijfers, een decimaal van drie cijfers of helemaal geen decimaal. Als u bijvoorbeeld het nummer 5.8697 heeft. Als u het getal afrondt naar een decimaal van twee cijfers, is het 5,87 als u afrondt op drie cijfers, dan wordt het afgerond op 5,870, als u op nul wilt afronden, wordt het 6,87.

In bankgetallen worden alle decimalen die kleiner zijn dan 0,5 naar beneden afgerond naar het vorige gehele getal en alle decimalen die groter zijn dan of gelijk zijn aan 0,5 worden naar boven afgerond naar het volgende gehele getal.

Ik hoop dat je de RONDE-functie in het werkblad hebt gebruikt. Ook in VBA kunnen we deze functie gebruiken, maar we hebben een verschil met deze functies. We zullen het verschil tussen deze twee functies later in dit artikel zien.

Syntaxis

Bekijk de syntaxis van de Round-functie.

Getal: dit is het getal dat we proberen af ​​te ronden.

[Aantal cijfers na decimaal]: hoeveel cijfers u nodig heeft na de decimale waarde.

Voorbeelden

U kunt deze VBA ronde functie Excel-sjabloon hier downloaden - VBA ronde functie Excel-sjabloon

Stel dat u het nummer 4.534 heeft en u wilt afronden op twee cijfers.

Volg onderstaande stappen.

Stap 1: Declareer de variabele als Variant.

Code:

 Sub Round_Example1 () Dim K als variant End Sub 

Stap 2: Wijs voor deze variabele " k " de waarde toe via de functie ROUND.

Code:

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

Stap 3: Getal is niets anders dan het getal dat we proberen af ​​te ronden, in dit geval is het getal 4,534

Code:

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

Stap 4: Hoeveel cijfers we moeten afronden, in dit geval moeten we afronden op 2 cijfers .

Code:

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

Stap 5: Toon nu de waarde van de variabele "k" in het berichtvenster VBA.

Code:

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

Voer deze code uit en kijk wat we krijgen.

We kregen het resultaat als 4,53 toen we afrondden op 2 cijfers.

Nu zal ik het aantal veranderen van 4.534 naar 4.535 . Kijk wat er nu gebeurt.

Code:

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

Voer nu de code uit en kijk wat het resultaat is.

We kregen het resultaat als 4,54 een decimaal hoger dan de vorige waarde van 4,53. Dit komt omdat we in dit voorbeeld het getal 4,535 hebben opgegeven, dus na het getal 3 is het volgende getal 5, dus wordt het afgerond naar het volgende getal, zodat 3 4 wordt.

Nu geef ik het nummer op als 2.452678 en ik zal proberen af ​​te ronden op 3 cijfers.

Code:

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

Voer deze code uit om het resultaat te zien.

Het resultaat is 2.453 .

2.45 2678 Hier zijn de getallen na de 2e decimaal 2678. Na nummer 2 is het volgende getal 6 dat groter is dan of gelijk is aan 5, zodat het naar boven wordt afgerond op het volgende decimale getal.

Nu zal ik hetzelfde getal gebruiken om naar nul af te ronden en kijken wat er gebeurt.

Code:

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

Voer de code uit en kijk wat we krijgen.

Omdat ik de ronde naar nul heb gebruikt, hebben we het resultaat als 2.

De reden waarom we het resultaat als 2 hebben gekregen, omdat hier het decimale eerste getal 4 is, wat kleiner is dan de 0,5, dus het wordt naar beneden afgerond.

Verschil tussen Excel en VBA ROUND-functie

Er zijn voornamelijk 2 verschillen.

# 1 - Syntaxis van beide functies:

Als je naar de syntaxis van beide functies kijkt, hebben we hier een verschil.

Excel Round Syntax: Round (getal, aantal cijfers na decimaal)
VBA Round Syntax: Round (Number, [Number of digits after decimal])

In Excel zijn beide argumenten verplicht, maar in VBA is het tweede argument optioneel.

Als je in VBA het tweede argument negeert, wordt het standaardargument als nul beschouwd, dus we krijgen het hele getal.

# 2 - Resultaten:

Het resultaat van deze twee functies is verschillend. Hieronder staan ​​enkele voorbeelden