VBA runda - Kako koristiti Excel VBA Round Function?

Excel VBA okrugla funkcija

Funkcija zaokruživanja u VBA-u je matematička funkcija koja, kako i samo ime sugerira, zaokružuje ili zaokružuje dati broj na određeni skup decimalnih mjesta koji je odredio korisnik, ova funkcija koristi logiku zaokruživanja, što znači da uzima 5 kao referenca i bilo koji broj s posljednjom znamenkom nakon decimalnog je ispod 5, a zatim je zaokružen prema dolje i obrnuto.

Možete zaokružiti broj na dvoznamenkastu, troznamenkastu decimalu ili je uopće nema. Na primjer, ako imate broj 5.8697. Ako broj zaokružite na dvoznamenkastu decimalu, to će biti 5,87. Ako zaokružite na tri znamenke, tada će se zaokružiti na 5.870. Ako želite zaokružiti na nulu, tada će biti 6.-

U bankarskim brojevima, sve decimale manje od 0,5 zaokružit će se na prethodnu cijelu vrijednost, a sve decimale veće ili jednake 0,5 zaokružit će se na sljedeću cijelu vrijednost.

Nadam se da ste na radnom listu koristili funkciju ROUND. I u VBA možemo koristiti ovu funkciju, ali imamo razlike u tim funkcijama. Razliku između ove dvije funkcije vidjet ćemo kasnije u ovom članku.

Sintaksa

Pogledajte sintaksu funkcije Round.

Broj: Ovo je broj koji pokušavamo zaokružiti.

(Broj znamenki nakon decimale ): Koliko znamenki trebate nakon decimalne vrijednosti.

Primjeri

Pretpostavimo da imate broj 4.534 i želite zaokružiti na dvije znamenke.

Slijedite korake u nastavku.

Korak 1: Proglasite varijablu varijantom.

Kodirati:

Podokrug_Primjer1 () Zatamni K kao varijantu Kraj pod

Korak 2: Za ovu varijablu " k " dodijelite vrijednost kroz funkciju ROUND.

Kodirati:

Potkrug_Primjer1 () Dim K Kao varijanta K = Round (End Sub

Korak 3: Broj nije ništa, već koji je broj koji pokušavamo zaokružiti. U ovom je slučaju broj 4,534

Kodirati:

Potkrug_Primjer1 () Dim K Kao varijanta K = krug (4.534, krajnji pod

Korak 4: Koliko znamenki trebamo zaokružiti? U ovom slučaju moramo zaokružiti na 2 znamenke .

Kodirati:

Potkrug_Primjer1 () Zatamni K Kao varijanta K = Okrugli (4.534, 2) Kraj Pod

Korak 5: Sada pokažite vrijednost varijable "k" u okviru za poruke VBA.

Kodirati:

Potkrug_Primjer1 () Dim K Kao varijanta K = Round (4.534, 2) MsgBox K End Sub

Pokrenite ovaj kod i pogledajte što ćemo dobiti.

Rezultat smo dobili kao 4,53 kada smo zaokružili na 2 znamenke.

Sada ću promijeniti broj s 4,534 na 4,535 . Pogledajte što se sada događa.

Kodirati:

Potkrug_Primjer1 () Dim K Kao varijanta K = Okrugli (4.535, 2) MsgBox K Kraj Sub

Sada pokrenite kod i pogledajte kakav je rezultat.

Rezultat smo dobili kao 4,54, jednu decimalu veću od prethodne vrijednosti 4,53. To je zato što smo u ovom primjeru dali broj poput 4,535, pa je nakon broja 3 sljedeći broj 5, pa je zaokružen na sljedeći broj, pa 3 postaje 4.

Sada ću dati broj kao 2,452678 i pokušat ću zaokružiti na 3 znamenke.

Kodirati:

Potkrug_Primjer2 () Dim K Kao varijanta K = Okrugli (2.452678, 3) MsgBox K Kraj Sub

Pokrenite ovaj kod da biste vidjeli rezultat.

Rezultat je 2,453 .

2,45 2678 Ovdje su brojevi nakon 2. decimale 2678. Nakon broja 2, sljedeći je broj 6, što je veće ili jednako 5, pa se zaokružuje na sljedeći decimalni broj.

Sad ću upotrijebiti isti broj da zaokružim na nulu i vidim što će se dogoditi.

Kodirati:

Potkolo_Primjer3 () Zatamni K Kao varijanta K = Okruglo (2.452678, 0) MsgBox K Kraj Sub

Pokrenite kod i pogledajte što ćemo dobiti.

Budući da sam iskoristio rundu na nulu, dobili smo rezultat kao 2.

Razlog zašto smo dobili rezultat kao 2 jer je ovdje decimalni prvi broj 4, što je manje od 0,5, pa je zaokruženo prema dolje.

Razlika između funkcije Excel i VBA ROUND

Postoje uglavnom 2 razlike.

# 1 - Sintaksa obje funkcije:

Ako pogledate sintaksu obje funkcije, ovdje imamo razliku.

Sintaksa Excel kruga: okrugla (broj, broj znamenki nakon decimale)
Sintaksa VBA kruga: okrugla (broj, (broj znamenki nakon decimale))

U Excelu su oba argumenta obavezna, ali u VBA drugi argument nije obavezan.

Ako zanemarite drugi argument u VBA-u, zadani argument uzima kao nulu, pa ćemo dobiti cijeli broj.

# 2 - Rezultati:

Rezultati koje daju ove dvije funkcije su različiti. Ispod je nekoliko primjera

Zanimljivi članci...