VBA-runde | Hvordan bruges Excel VBA Round-funktion?

Excel VBA Round-funktion

Rund funktion i VBA er en matematisk funktion, som som navnet selv antyder, afrunder eller afrunder det givne tal til det specifikke sæt decimaler, der er angivet af brugeren, denne funktion bruger logikken i runde, hvilket betyder, at det tager 5 som reference og ethvert tal med sidste ciffer efter decimalen er under 5, så er det runde ned og omvendt.

Du kan afrunde et tal til to-cifret decimal, tre-cifret decimal eller slet ingen decimal. For eksempel, hvis du har nummeret 5.8697. Hvis du afrunder tallet til en tocifret decimal, vil det være 5,87, hvis du afrunder til tre cifre, så afrunder det til 5,870, hvis du vil afrunde til nul, vil det være 6.-

I banktal afrundes alle decimaler, der er mindre end 0,5, ned til den foregående heltal, og alle decimaler, der er større end eller lig med 0,5, afrundes op til næste heltal.

Jeg håber, du har brugt RUND-funktionen i regnearket. Også i VBA kan vi bruge denne funktion, men vi har en forskel med disse funktioner. Vi vil se forskellen mellem disse to funktioner senere i denne artikel.

Syntaks

Se på syntaksen for Round-funktionen.

Nummer: Dette er det nummer, vi prøver at afrunde.

[Antal cifre efter decimal]: Hvor mange cifre du har brug for efter decimalværdien.

Eksempler

Du kan downloade denne VBA Round Function Excel-skabelon her - VBA Round Function Excel-skabelon

Antag, at du har tallet 4.534, og at du vil afrunde til to cifre.

Følg nedenstående trin.

Trin 1: Erklær variablen som variant.

Kode:

 Sub Round_Example1 () Dim K Som Variant End Sub 

Trin 2: Til denne variabel “ k ” tildel værdien gennem RUND-funktionen.

Kode:

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

Trin 3: Nummer er intet andet end hvad er det nummer, vi prøver at afrunde, i dette tilfælde er tallet 4.534

Kode:

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

Trin 4: Hvor mange cifre vi har brug for at afrunde, i dette tilfælde skal vi afrunde til 2 cifre .

Kode:

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

Trin 5: Vis nu variablen "k" -værdi i meddelelsesfeltet VBA.

Kode:

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

Kør denne kode og se hvad vi får.

Vi fik resultatet som 4,53, da vi afrundede til 2 cifre.

Nu vil jeg ændre tallet fra 4.534 til 4.535 . Se hvad der sker nu.

Kode:

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

Kør nu koden og se, hvad resultatet er.

Vi fik resultatet 4,54 en decimal højere end den tidligere værdi på 4,53. Dette skyldes, at vi i dette eksempel har leveret nummeret som 4.535, så efter nummer 3 er næste nummer 5, så det afrundes til næste nummer, så 3 bliver 4.

Nu vil jeg angive nummeret som 2.452678, og jeg vil prøve at afrunde til 3 cifre.

Kode:

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

Kør denne kode for at se resultatet.

Resultatet er 2.453 .

2.45 2678 Her er numrene efter 2. decimal 2678. Efter nummer 2 er det næste tal 6, der er større end eller lig med 5, så det afrundes op til det næste decimaltal.

Nu bruger jeg det samme nummer til at afrunde til nul og se, hvad der sker.

Kode:

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

Kør koden og se hvad vi får.

Da jeg har brugt runden til nul, fik vi resultatet som 2.

Årsagen til, at vi fik resultatet som 2, for her er det første decimaltal 4, som er mindre end 0,5, så det afrundes nedad.

Forskellen mellem Excel og VBA ROUND-funktion

Der er hovedsageligt to forskelle.

# 1 - Syntaks for begge funktionerne:

Hvis du ser på syntaksen for begge funktionerne, har vi en forskel her.

Excel Round Syntax: Round (Antal, antal cifre efter decimal)
VBA Round Syntax: Round (Number, [Antal cifre efter decimal])

I excel er begge argumenter obligatoriske, men i VBA er andet argument valgfrit.

I VBA, hvis du ignorerer det andet argument, tager standardargumentet som nul, så vi får hele tallet.

# 2 - Resultater:

Resultatet af disse to funktioner er forskellige. Nedenfor er et par eksempler