Excel VBA kerek funkció

Az Excel kerek funkciót használnia kellett a lebegő számok kerekítésére egy meghatározott tizedesjegyig. A VBA kerek funkció teljesen másképp viselkedik, mint amit az Excelben használ. A VBA kerek funkció „kerek és páros” logikát használ. Ha a lekerekíteni kívánt szám utolsó tizedesjegye tizedes után> = 0, 6, akkor a VBA kerek funkció felfelé kerekíti (kerek fel).

Ha a kerekíteni kívánt számnak az utolsó számjegy tizedesjel <= 0, 4 után van, lefelé kerekíti (Lekerekítés). Tegyük fel, hogy a tizedes rész pontosan 0, 5, akkor mit csinál? Ilyen esetekben a szám egész számával ellenőrzi. Ha az egész rész egyenlő, akkor lefelé kerekíti a tizedes rész páros számáig. Ha az egész szám páratlan, akkor felfelé kerekíti a páros számra. Ezt a kerekítési módszert „bankár kerekítésének” is hívják.

A kerek függvény szintaxisa az Excel VBA-ban

A VBA Round funkció a következő szintaxissal rendelkezik:

Hol,

  • Kifejezés - az a lebegő szám, amelyet körbe akarta tenni.
  • Decimal_places - Ez egy választható argumentum, amely egész számot vesz, amely meghatározza a tizedesjegyeket, ameddig a számnak kereknek kell lennie. Mindig nagyobbnak kell lennie, vagy egyenlő kell lennie nullával. Ha nincs megadva, akkor alapértelmezés szerint nullát vesz figyelembe. Ami azt jelenti, hogy egy számot egészre kerekítenek.

Hogyan kell használni az Excel VBA kerek funkciót?

Megtanuljuk, hogyan kell használni a VBA kerek funkciót néhány példával az Excelben.

Itt letöltheti ezt a VBA Kerek Excel sablont - VBA Kerek Excel sablon

1. példa - VBA kerek funkció egy szám kerekítéséhez

Kövesse az alábbi lépéseket a Kerek funkció használatához az Excel VBA-ban.

1. lépés: Helyezzen be új modult a Visual Basic Editor (VBE) alá.

2. lépés: Adjon meg egy új alapelvet a makró VBE-ben történő tárolásához.

Kód:

 Sub Round_Ex1 () Sub 

3. lépés: Az MsgBox funkcióval felpattanhat egy ilyen üzenetre: „Az érték lekerekítve:”

Kód:

 Sub Round_Ex1 () MsgBox "A lekerekített érték:" Sub befejezése 

4. lépés: Most illessze be a „& Round (10.9834, 2)” kifejezést az MsgBox parancs elé, hogy a lekerekített érték az üzenetmezőben jelenjen meg.

Kód:

 Sub Round_Ex1 () MsgBox "Az érték kerekítve van:" & Kerek (10.9834, 2) Vége Sub 

5. lépés: A kód futtatásához nyomja meg az F5 vagy a Futtatás gombot, amely a legfelső panelen található. Lát egy kimenetet, amint az alább látható.

2. példa - Kereszt egy változót a VBA kerek felhasználásával

1. lépés: A makró tárolására határozjon meg egy új alprocedúrát a VBE-ben.

Kód:

 Sub Round_Ex2 () Sub 

2. lépés: Adja meg a roundNumber nevű változót duplaként, amely megtarthatja a kerekíteni kívánt szám értékét.

Kód:

 Sub Round_Ex2 () Eltávolítani roundNumber mint dupla vég Sub 

3. lépés: Adjon meg egy számértéket, amelyet le kell kerekíteni erre a változóra a hozzárendelési operátor segítségével.

Kód:

 Sub Round_Ex2 () Eltávolítani roundNumber As Double roundNumber = 23.98 vége Sub 

4. lépés: Használja az MsgBox kombinációját és a Kerek funkciót, hogy kerekítse ezt a számot egy tizedesjeggyel.

Kód:

 Sub Round_Ex2 () Halvány roundNumber As Double roundNumber = 23.98 MsgBox "A kerekített szám:" & Kerek (roundNumber, 1) Sub vége 

5. lépés: Nyomjuk meg az F5 vagy a Futtatás gombot, hogy futtassuk ezt a kódot, és látjuk a kimenetet.

A fenti képernyőképen látható kimenetet láthatja. Felhívjuk figyelmét, hogy a „kerek és páros” logikával az utolsó tizedes 10-re van kerekítve, és a következő tizedes tíz maga lesz 10, amelynek eredményeként a számot az egész szám legközelebbi páros részére (azaz 24-re) kerekítik.

3. példa - Kerek cellaérték a VBA kerek felhasználásával

Tegyük fel, hogy a kerekíteni kívánt értéket az excel munkalap egyik cellájában tárolja.

Csak annyit szeretne, hogy kerekítse ezt az értéket két tizedesjegyig.

1. lépés: A makró tárolása céljából definiáljon új al-eljárást a modulban.

Kód:

 Sub Round_Ex3 () Sub 

2. lépés: Írja be a parancsot „Range (“ A2 ”). Value =” értékkel. Ez a parancs helyként működik, ahol a kimenet tárolódik.

Kód:

 Sub Round_Ex3 () tartomány ("A2") Érték = Sub vége 

3. lépés: Most kerek függvényt használjon az A1 cellában lévő érték kerekítésére és az eredmény tárolására az A2 cellában. Írja be a következő kóddarabot: Kerek (Tartomány („A1”). Érték, 2).

Kód:

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

4. lépés: Nyomja meg az F5 vagy a Futtatás gombot a kód futtatásához és a munkalap A2 cellájának kimenetének megtekintéséhez.

4. példa - Szám kerekítése a VBA RoundUp függvény használatával

Tegyük fel, hogy egy számot fel szeretne kerekíteni a VBA használatával. Ezt a WorksheetFunction.RoundUp függvény használatával megteheti.

1. lépés: Adjon meg egy új alapelvet a Visual Basic Editorban, amely képes tárolni a makrót.

Kód:

 Sub Round_Ex4 () Sub 

2. lépés: Adjon meg két változót, az egyiket a felfelé kerekíteni kívánt szám tartásához. A másik pedig a roundup eredmény tárolására.

Kód:

 Sub Round_Ex4 () tompítva numToRound mint kettős tompa numRoundUp mint dupla vég sub 

3. lépés: Tárolja az értéket a numToRound változóba, amelyet fel szeretne kerekíteni.

Kód:

 Sub Round_Ex4 () tompítva numToRound mint dupla dimm numberRoundUp mint dupla numToRound = 12.7543712 End Sub 

4. lépés: Most használja a RoundUp gombokat ennek a számnak a felcseréléséhez, és tárolja az eredményt egy numRoundUp változóban.

Kód:

 Sub Round_Ex4 () Halvány numToRound Kettős Halvány numRoundUp As Kettős numToRound = 12.7543712 numRoundUp = Application.WorksheetFunction.RoundUp (numToRound, 4) End Sub 

5. lépés: Az MsgBox használatával jelenítse meg a kimenetet az üzenet mezőben.

Kód:

 Sub Round_Ex4 () Halvány numToRound Kettős Dim numRoundUp As Kettős numToRound = 12.7543712 numRoundUp = Application.WorksheetFunction.RoundUp (numToRound, 4) MsgBox "A felfelé kerekített szám:" & numRoundUp End Sub 

6. lépés: Nyomja meg az F5 vagy a Futtatás gombot a kód futtatásához és a kimenet megtekintéséhez.

5. példa - Kerekítsen le egy számot a VBA RoundDown függvény segítségével

1. lépés: Adjon meg egy új alfolyamatban két új változót a numToRoundDown és roundDownNum névvel. Az egyik a lekerekítendő szám értékének tartására, a másik a kimenet tárolására a szám lekerekítése után.

Kód:

 Sub Round_Ex5 () tompítva számToRoundDown mint dupla tompítás roundDownNum mint dupla vég Sub 

2. lépés: Adjon hozzá egy értéket, amelyet le szeretne kerekíteni a „numToRoundDown” nevű változóra.

Kód:

 Sub Round_Ex5 () Halvány numToRoundDown mint dupla tompa roundDownNum mint dupla numToRoundDown = 7.075711 

3. lépés: Most használja a RoundDown alkalmazást ennek a számnak a kerekítésére, és az eredményt egy roundDownNum változóban tárolja.

Kód:

 Sub Round_Ex5 () Halvány numToRoundDown mint dupla tompa roundDownNum mint dupla numToRoundDown = 7, 075711 roundDownNum = Application.WorksheetFunction.RoundDown (numToRoundDown, 4) End Sub 

4. lépés: Használja az MsgBox funkciót lefelé kerekített szám értékének megjelenítéséhez.

Kód:

 Sub Round_Ex5 () Dim numToRoundDown As Double Dim roundDownNum As Double NumerToRoundDown = 7.075711 roundDownNum = Application.WorksheetFunction.RoundDown (numToRoundDown, 4) MsgBox "A lefelé kerekített szám:" & roundDownNum End Sub 

5. lépés: Nyomja meg az F5 vagy a Futtatás gombot, hogy futtassa ezt a kódot, és a kimenetet üzenődobozként lássa.

Ez a cikkben. Maroknyi példával rögzítettük a VBA kör, fel és fel kör fogalmát.

Dolgok, amikre emlékezni kell

  • Ez a funkció a Banker kerekítési módszerét használja a számok kerekítéséhez, amelyek kissé különböznek a tényleges kerekítési módszertől.
  • Ezt a funkciót egy lebegőpontos szám vagy egy rögzített tizedesjeggyel rendelkező szám kerekítésére használják, a megadott számú helyig.
  • Ez azt jelenti, hogy a függvény felfelé vagy lefelé kerekíti a számot, a tizedes pontok utáni számtól függően.
  • Az érvelés decimális helyének nullával nagyobbnak vagy egyenlőnek kell lennie.
  • Ha a decimális_helyeket üresen hagyja, akkor nullának tekintik, és a számot a legközelebbi egészre kerekítik.
  • Ha a tizedes_helyeket nullánál kevesebbre állítja, akkor 5-ös futási hiba jelentkezik. „5-ös futási idő hiba: érvénytelen eljáráshívás vagy argumentum”.
  • Nem igazán megjósolható, hogy ez a függvény milyen kerekíti az értéket, ha a tizedes szám után 5 érték van.
  • Ha a Kerek funkció egyik vagy mindkét argumentuma nem numerikus, akkor a függvény a 13-as futási hibát adja vissza. „13-as futási idő hiba: Típus eltérés”.

Ajánlott cikkek

Ez egy útmutató a VBA kerek funkcióhoz. Itt megvitattuk, hogyan lehet használni az Excel VBA kerek funkciót, a gyakorlati példákkal és a letölthető Excel sablonnal együtt. Megnézheti más javasolt cikkeinket -

  1. Teljes útmutató a hibás VBA-hoz
  2. Hogyan kell használni a VBA számformátumot?
  3. VBA VLOOKUP függvény példákkal
  4. VBA függvény létrehozása Excelben

Kategória: