Okrúhla funkcia Excel VBA

Musíte použiť funkciu Excel Round na zaokrúhlenie plávajúcich čísel na konkrétny počet desatinných miest. Funkcia VBA Round sa správa úplne iným spôsobom ako v Exceli. Funkcia VBA Round používa logiku „zaokrúhliť na párne“. Ak číslo, ktoré sa snažíte zaokrúhliť, má poslednú číslicu za desatinnou čiarou> = 0, 6, funkcia VBA Round ju zaokrúhli nahor (zaokrúhliť NAHORU).

Ak číslo, ktoré sa snažíte zaokrúhliť, má poslednú číslicu za desatinnou čiarou <= 0, 4, zaokrúhli ju nadol (zaokrúhliť nadol). Predpokladajme, že desatinná časť je presne 0, 5 a čo potom? V takých prípadoch sa overí celočíselnou časťou čísla. Ak je celá časť rovná, zaokrúhľuje sa nadol na párne číslo desatinnej časti. Ak je celé číslo nepárne, zaokrúhli ho na párne číslo. Tento spôsob zaokrúhľovania sa nazýva aj „zaokrúhľovanie bankárov“.

Syntax funkcie Round Round v Excel VBA

Funkcia VBA Round má nasledujúcu syntax:

Kde,

  • Výraz - pohyblivé číslo, ktoré chcete zaokrúhliť.
  • Decimal_places - Je to voliteľný argument, ktorý má celočíselnú hodnotu, ktorá určuje desatinné miesta, na ktorých sa má zaokrúhliť číslo. Mali by byť vždy väčšie alebo rovné nule. Ak nie je uvedené, použije sa štandardne nula. Čo znamená, že číslo je zaokrúhlené na celé číslo.

Ako používať Excel VBA Round Function?

Naučíme sa, ako používať funkciu VBA Round s niekoľkými príkladmi v Exceli.

Túto šablónu VBA Round Excel si môžete stiahnuť tu - VBA Round Excel Template

Príklad č. 1 - Zaokrúhliť funkciu VBA na zaokrúhlenie čísla

Ak chcete použiť funkciu Okrúhly v programe Excel VBA, postupujte podľa nasledujúcich krokov.

Krok 1: Vložte nový modul do editora jazyka Visual Basic (VBE).

Krok 2: Definujte novú čiastkovú procedúru na uloženie makra vo VBE.

kód:

 Sub Round_Ex1 () End Sub 

Krok 3: Použite funkciu MsgBox, aby ste mohli zobraziť takúto správu „Hodnota zaokrúhlená je:“

kód:

 Sub Round_Ex1 () MsgBox "Hodnota zaokrúhlená je:" End Sub 

Krok 4: Teraz pridajte „& Round (10.9834, 2)“ pred príkaz MsgBox, aby sa zaokrúhlená hodnota zobrazila v okne so správou.

kód:

 Sub Round_Ex1 () MsgBox „Zaokrúhlená hodnota je:“ a zaokrúhlené (10.9834, 2) End Sub 

Krok 5: Spustite tento kód stlačením klávesu F5 alebo tlačidla Spustiť umiestneného na najvyššom paneli. Uvidíte výstup, ako je uvedené nižšie.

Príklad č. 2 - Zaokrúhlite premennú pomocou kola VBA

Krok 1: Definujte nový podprogram vo VBE na uloženie makra.

kód:

 Sub Round_Ex2 () End Sub 

Krok 2: Definujte premennú s názvom roundNumber ako Double, ktorá môže obsahovať hodnotu čísla, ktoré sa má zaokrúhliť.

kód:

 Sub Round_Ex2 () Dim roundNumber As Double End Sub 

Krok 3: Priraďte číselnú hodnotu, ktorá sa má zaokrúhliť na túto premennú pomocou operátora priradenia.

kód:

 Sub Round_Ex2 () Dim roundNumber As Double roundNumber = 23, 98 End Sub 

Krok 4: Použite kombináciu MsgBoxu a funkcie Round na zaokrúhlenie tohto čísla na jedno desatinné miesto.

kód:

 Sub Round_Ex2 () Dim roundNumber As Double roundNumber = 23.98 MsgBox "Zaokrúhlené číslo je:" & Round (roundNumber, 1) End Sub 

Krok 5: Po stlačení klávesu F5 alebo tlačidla Spustiť spustíme tento kód a uvidíme výstup.

Výstup môžete vidieť tak, ako je to znázornené na obrázku vyššie. Vezmite prosím na vedomie, že pri logike „zaokrúhliť na párne“ sa zaokrúhľuje na posledné desatinné miesto na 10 a nasledujúce desatinné miesto sa stáva desiatimi, vďaka čomu je číslo zaokrúhlené na najbližšiu párnu časť celého čísla (tj 24).

Príklad č. 3 - Zaokrúhlená hodnota bunky pri použití VBA

Predpokladajme, že hodnota, ktorú chcete zaokrúhliť, je uložená v jednej bunke vášho excelového listu.

Všetko, čo chcete, je zaokrúhliť túto hodnotu na dve desatinné miesta.

Krok 1: Definujte novú čiastkovú procedúru v module na uloženie makra.

kód:

 Sub Round_Ex3 () End Sub 

Krok 2: Príkaz napíšte ako „Rozsah („ A2 “). Hodnota =“. Tento príkaz funguje ako miesto, kde bude výstup uložený.

kód:

 Sub Round_Ex3 () Rozsah ("A2"). Hodnota = End Sub 

Krok 3: Teraz použite okrúhlu funkciu na zaokrúhlenie hodnoty prítomnej v bunke A1 a uložte výsledok do bunky A2. Napíšte nasledujúci kód: Okrúhly (Rozsah („A1“). Hodnota, 2).

kód:

 Sub Round_Ex3 () Range ("A2"). Hodnota = Round (Range ("A1"). Value, 2) End Sub 

Krok 4: Stlačením klávesu F5 alebo Spustiť spustite tento kód a pozrite si výstup v bunke A2 pracovného hárka.

Príklad č. 4 - Zaokrúhlite číslo pomocou funkcie VBA RoundUp

Predpokladajme, že chcete zaokrúhliť číslo pomocou VBA. Môžete to urobiť pomocou funkcie WorksheetFunction.RoundUp.

Krok 1: Definujte novú čiastkovú procedúru v editore jazyka Visual Basic, ktorý môže ukladať vaše makro.

kód:

 Sub Round_Ex4 () End Sub 

Krok 2: Definujte dve premenné, jednu pre číslo, ktoré chcete zaokrúhliť nahor. A druhý na uloženie výsledku zaokrúhlenia.

kód:

 Sub Round_Ex4 () Dim numToRound ako Double Dim numRoundUp ako Double End Sub 

Krok 3: Uložte hodnotu do premennej numToRound, ktorú chcete zaokrúhliť.

kód:

 Sub Round_Ex4 () Dim numToRound ako Double Dim numRoundUp As Double numToRound = 12.7543712 End Sub 

Krok 4: Teraz použite RoundUp na zaokrúhlenie tohto čísla a uloženie výsledku do premennej numRoundUp.

kód:

 Sub Round_Ex4 () Dim numToRound ako Double Dim numRoundUp As Double numToRound = 12.7543712 numRoundUp = Application.WorksheetFunction.RoundUp (numToRound, 4) End Sub 

Krok 5: Použite MsgBox na zobrazenie výstupu v okne so správou.

kód:

 Sub Round_Ex4 () Dim numToRound ako Double Dim numRoundUp As Double numToRound = 12.7543712 numRoundUp = Application.WorksheetFunction.RoundUp (numToRound, 4) MsgBox "Počet zaokrúhlených nahor je:" & numRoundUp End Sub 

Krok 6: Stlačením F5 alebo Run spustite tento kód a uvidíte výstup.

Príklad č. 5 - Zaokrúhlenie čísla pomocou funkcie VBA RoundDown

Krok 1: V novej čiastkovej procedúre definujte dve nové premenné s názvom numToRoundDown a roundDownNum. Jeden drží hodnotu čísla, ktoré sa má zaokrúhliť nadol, a ďalšie, aby uložil výstup po zaokrúhlení čísla nadol.

kód:

 Sub Round_Ex5 () Dim numToRoundDown As Double Dim roundDownNum As Double End Sub 

Krok 2: Priraďte hodnotu, ktorú chcete zaokrúhliť, premennej s názvom „numToRoundDown“.

kód:

 Sub Round_Ex5 () Dim numToRoundDown ako Double Dim roundDownNum As Double numToRoundDown = 7.075711 End Sub 

Krok 3: Teraz použite RoundDown na zaokrúhlenie tohto čísla a uloženie výsledku do premennej roundDownNum.

kód:

 Sub Round_Ex5 () Dim numToRoundDown ako Double Dim round roundDownNum As Double numToRoundDown = 7.075711 roundDownNum = Application.WorksheetFunction.RoundDown (numToRoundDown, 4) End Sub 

Krok 4: Pomocou funkcie MsgBox zobrazte hodnotu čísla zaokrúhleného nadol.

kód:

 Sub Round_Ex5 () Dim numToRoundDown ako Double Dim round roundDownNum As Double numToRoundDown = 7.075711 roundDownNum = Application.WorksheetFunction.RoundDown (numToRoundDown, 4) MsgBox "Číslo zaokrúhlené nadol je:" & roundDownNum End Sub 

Krok 5: Stlačením klávesu F5 alebo Run spustite tento kód a výstup uvidíte ako okno so správou.

Toto je článok. Koncepty VBA Round, Round Up a Round Down sme zachytili pomocou niekoľkých príkladov.

Čo je potrebné pamätať

  • Táto funkcia používa metódu zaokrúhľovania Banker na zaokrúhľovanie čísel, ktoré sú trochu odlišné od skutočnej metódy zaokrúhľovania.
  • Táto funkcia sa používa na zaokrúhlenie čísla s pohyblivou rádovou čiarkou alebo čísla s pevnými desatinnými číslami na určený počet miest.
  • To znamená, že funkcia zaokrúhli číslo nahor alebo nadol v závislosti od čísla za desatinnou čiarkou.
  • Argument decimal_places musí byť väčší alebo rovný nule.
  • Ak je desatinné miesto prázdne, bude sa považovať za nulu a číslo sa zaokrúhli na najbližšie celé číslo.
  • Ak je decimal_places nastavené menej ako nula, potom nastane chyba 5 runtime. ‚Chyba pri behu '5': Neplatné volanie procedúry alebo argument“.
  • Nie je možné predpovedať, čo táto funkcia zaokrúhli hodnotu, keď číslica za desatinnou čiarkou je 5.
  • Ak jeden alebo obidva argumenty funkcie Round nie sú číselné, funkcia vráti chybu runtime 13. „Chyba pri spustení '13': Neshoda typu“.

Odporúčané články

Toto bol sprievodca funkciou VBA Round Function. Tu sme diskutovali o tom, ako používať Excel VBA Round Function spolu s praktickými príkladmi a stiahnuteľnou šablónou Excel. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. Kompletný sprievodca chybou VBA
  2. Ako používať formát čísla VBA?
  3. Funkcia VBA VLOOKUP s príkladmi
  4. Vytvorenie funkcie VBA v Exceli

Kategórie: