Zaoblená funkcia programu Excel VBA
Zaokrúhlená funkcia vo VBA je matematická funkcia, ktorá, ako už sám názov napovedá, zaokrúhľuje dané číslo na konkrétne alebo na desatinné miesta zadané používateľom nahor alebo nadol, táto funkcia využíva logiku zaokrúhlenia, čo znamená, že ako referencia a akékoľvek číslo s poslednou číslicou za desatinnou čiarkou je pod 5, potom je zaokrúhlené nadol a naopak.
Číslo môžete zaokrúhliť na dvojciferné desatinné miesto, trojciferné desatinné číslo alebo vôbec žiadne desatinné miesto. Napríklad, ak máte číslo 5.8697. Ak zaokrúhlite číslo na dvojciferné desatinné číslo, bude to 5,87, ak zaokrúhlite na tri číslice, potom sa zaokrúhli na 5 870, ak chcete zaokrúhliť na nulu, bude to 6.-
V číslach bankovníctva sa všetky desatinné miesta, ktoré sú menšie ako 0,5, zaokrúhlia nadol na predchádzajúcu celočíselnú hodnotu a všetky desatinné miesta, ktoré sú väčšie alebo rovné 0,5, sa zaokrúhlia nahor na ďalšiu celočíselnú hodnotu.
Dúfam, že ste v pracovnom liste použili funkciu ROUND. Aj vo VBA môžeme túto funkciu použiť, ale s týmito funkciami máme rozdiel. Rozdiel medzi týmito dvoma funkciami uvidíme ďalej v tomto článku.
Syntax
Zoznámte sa so syntaxou funkcie Round.
Číslo: Toto je číslo, ktoré sa snažíme zaokrúhliť.
[Počet číslic za desatinnou časťou]: Koľko číslic potrebujete po desatinnej hodnote.
Príklady
Túto šablónu Excel s okrúhlymi funkciami VBA si môžete stiahnuť tu - Šablónu Excel s okrúhlymi funkciami VBAPredpokladajme, že máte číslo 4.534 a chcete zaokrúhliť na dve číslice.
Postupujte podľa nasledujúcich krokov.
Krok 1: Deklarujte premennú ako Variant.
Kód:
Sub Round_Example1 () Dim K ako variant End Sub
Krok 2: Pre túto premennú „ k “ priraďte hodnotu pomocou funkcie ROUND.
Kód:
Sub Round_Example1 () Dim K As Variant K = Round (End Sub
Krok 3: Číslo nie je nič iné, len to, čo je číslo, ktoré sa snažíme zaokrúhliť, v tomto prípade je to číslo 4,534
Kód:
Sub Round_Example1 () Dim K As Variant K = Round (4.534, End Sub
Krok 4: Koľko číslic potrebujeme zaokrúhliť, v tomto prípade musíme zaokrúhliť na 2 číslice .
Kód:
Sub Round_Example1 () Dim K As Variant K = Round (4.534, 2) End Sub
Krok 5: Teraz ukážte hodnotu premennej „k“ v okne správy VBA.
Kód:
Sub Round_Example1 () Dim K As Variant K = Round (4.534, 2) MsgBox K End Sub
Spustite tento kód a uvidíte, čo dostaneme.
Výsledok sme dostali ako 4,53, keď sme zaokrúhlili na 2 číslice.
Teraz zmením číslo z 4,534 na 4,535 . Pozri, čo sa stane teraz.
Kód:
Sub Round_Example1 () Dim K As Variant K = Round (4.535, 2) MsgBox K End Sub
Teraz spustite kód a uvidíte, aký je výsledok.
Získali sme výsledok ako 4,54 o jedno desatinné miesto vyšší ako predchádzajúca hodnota 4,53. Je to preto, že v tomto príklade sme zadali číslo ako 4,535, takže po čísle 3 je ďalšie číslo 5, takže sa zaokrúhli na ďalšie číslo, takže z 3 sa stane 4.
Teraz zadám číslo ako 2.452678 a pokúsim sa zaokrúhliť na 3 číslice.
Kód:
Sub Round_Example2 () Dim K As Variant K = Round (2.452678, 3) MsgBox K End Sub
Spustením tohto kódu zobrazíte výsledok.
Výsledok je 2,453 .
2,45 2678 Tu čísla za 2. desatinným miestom sú 2678. Po čísle 2 je ďalšie číslo 6, ktoré je väčšie alebo rovné 5, takže sa zaokrúhli na ďalšie desatinné číslo nahor.
Teraz použijem to isté číslo na zaokrúhlenie na nulu a uvidím, čo sa stane.
Kód:
Sub Round_Example3 () Dim K As Variant K = Round (2.452678, 0) MsgBox K End Sub
Spustite kód a uvidíte, čo dostaneme.
Pretože som použil kolo na nulu, dostali sme výsledok ako 2.
Dôvod, prečo sme dostali výsledok ako 2, pretože tu je desatinné prvé číslo 4, ktoré je menšie ako 0,5, takže je zaokrúhlené nadol.
Rozdiel medzi funkciami Excel a VBA ROUND
Existujú hlavne 2 rozdiely.
# 1 - Syntax obidvoch funkcií:
Ak sa pozriete na syntax obidvoch funkcií, máme tu rozdiel.
Syntax zaokrúhlenia programu Excel: Zaokrúhlenie (počet, počet číslic po desatinnej čiarke)
Syntax zaokrúhľovania VBA: zaokrúhlenie (počet, [počet číslic po desatinnej čiarke])
V programe Excel sú oba argumenty povinné, ale vo VBA je druhý argument voliteľný.
Ak vo VBA ignorujete druhý argument, predvolený argument bude nula, takže dostaneme celé číslo.
# 2 - Výsledky:
Výsledok týchto dvoch funkcií je odlišný. Ďalej uvádzam niekoľko príkladov