VBA Round, RoundUp és RoundDown függvények

VBA forduló

A VBA kerek függvény a számokat meghatározott számjegyekre kerekíti.

A VBA kerek függvény szintaxisa

A VBA kerek függvény szintaxisa a következő:

Kerek (kifejezés, [Decimális_helyek]) ahol:

  • Kifejezés - A kerekítendő szám.
  • Tizedes jel (Választható) - Egész szám, amely megadja a kerekítendő tizedesjegyek számát. Az értéknek 0 -nál nagyobbnak vagy egyenlőnek kell lennie (> = 0). Ha üres, akkor a 0 alapértelmezett értéket használja, ami azt jelenti, hogy a függvény a legközelebbi egész számra kerekít.

Tehát nézzünk egy példát, hogy lássa, hogyan működik a VBA -kerek funkció, tizedesjegyre kerekítve:

12345 1. forduló ()Msgbox Round (7.25, 1)End Sub

A kapott MessageBox:

A VBA kerek változó

A fenti példában a kerekítendő számot közvetlenül a függvénybe adtuk meg, általában azonban egy változót kerekítünk. Az alábbi példa egy változót használ:

Megjegyzés: A kettős változótípust tizedes értékek tárolására használjuk.

123456789 Sub RoundUsingVariable ()Halvány egységszám duplánegységszám = 7,25MsgBox "Az érték" és kerek (unitcount, 1)End Sub

Az eredmény:

VBA kerekítési eredmények

Tényleges szám Tizedesjegyek száma Eredmény
7.25 0 7
7.25 1 7.2
7.25 2 7.25
-7.25 1 -7.2
-7.25 2 -7.25

Unod már a VBA kódpéldák keresését? Próbálja ki az AutoMacro -t!

VBA kerek cellaérték

A cella értékét közvetlenül is kerekítheti a VBA -ban:

123 Sub RoundCell ()Tartomány ("A1"). Érték = Kerek (Tartomány ("A1"). Érték, 2)End Sub

VBA RoundUp funkció

Tegyük fel, hogy fel szeretne kerekíteni egy számot a VBA használatával. Nincs beépített VBA RoundUp egyenértékű funkció, ehelyett az Excel RoundUp munkalap funkciót hívhatja meg a VBA-kódjából:

1 roundupUnitcount = Application.WorksheetFunction.RoundUp (unitcount, 3)

Az Excel munkalap -funkciói a VBA -ban használhatók a MunkalapFunkció tárgy. Az egyetlen olyan munkalap-funkció, amelyet nem lehet meghívni, azok, amelyek már rendelkeznek beépített VBA-megfelelővel.

Emlékeztető az Excel munkalap RoundUp függvényének szintaxisára:

KERESÉS (szám, számjegy), ahol:

  • Szám - Az a szám, amelyet fel szeretne kerekíteni.
  • Számjegyek - A számok kerekíteni kívánt számjegyeinek száma.

Tehát nézzünk egy példát, hogy láthassa, hogyan érheti el a RoundUp munkalap funkciót a VBA -kódjában:

12345678910111213 Sub RoundUp ()Halvány egységszám duplánDim roundupUnitcount As Doubleegységszám = 7,075711roundupUnitcount = Application.WorksheetFunction.RoundUp (unitcount, 4)MsgBox "Az érték" & roundupUnitcountEnd Sub

Az eredmény:

Kerekítés a legközelebbi egész számig

Felkerekítheti a legközelebbi egész számra, ha 0 -t ad meg tizedesjegyként:

12345 Sub RoundUpWhole ()MsgBox Application.WorksheetFunction.RoundUp (7.1, 0)End Sub

A kapott eredmény:

VBA programozás | A kódgenerátor működik az Ön számára!

A RoundUp funkció eredményei

Tényleges szám Számjegyek Eredmény
7.075711 0 8
7.075711 1 7.1
7.075711 2 7.08
7.075711 3 7.076
7.075711 -1 10
7.075711 -2 100
7.075711 -3 1000

VBA RoundDown funkció

Tegyük fel, hogy le szeretne kerekíteni egy számot a VBA használatával. Nincs beépített VBA RoundDown ekvivalens funkció sem, helyette ismét azt tenné, hogy az Excel RoundDown munkalap funkciót hívja meg a VBA-kódjából.

Emlékeztető az Excel munkalap RoundDown funkció szintaxisára:

KERESÉS (szám, számjegy) ahol:

• Szám - Az a szám, amelyet lefelé szeretne kerekíteni.
• Számjegyek - Azon számjegyek száma, amelyeket kerekíteni szeretne.

Tehát nézzünk egy példát, hogy láthassa, hogyan érheti el a RoundDown munkalap funkciót a VBA -kódjában:

12345678910111213 Sub RoundDown ()Halvány egységszám duplánHomályos kerekítésUnitcount As Doubleegységszám = 5,225193rounddownUnitcount = Application.WorksheetFunction.RoundDown (unitcount, 4)MsgBox "Az érték" & rounddownUnitcountEnd Sub

Az eredmény:

Lefelé a legközelebbi egész számig

Lefelé kerekítheti a legközelebbi egész számot úgy, hogy 0 -t ad meg tizedesjegyként:

12345 Sub RoundDownWhole ()MsgBox Application.WorksheetFunction.RoundDown (7.8, 0)End Sub

Az eredmény:

A RoundDown funkció eredményei

Tényleges szám Számjegyek Eredmény
5.225193 0 5
5.225193 1 5.2
5.225193 2 5.22
5.225193 3 5.225
5.225193 -1 0
5.225193 -2 0
5.225193 -3 0

VBA programozás | A kódgenerátor működik az Ön számára!

Egyéb VBA kerekítési funkciók

VBA mennyezet - RoundUp meghatározott értékig

A VBA nem rendelkezik Ceiling.Math függvény megfelelőjével, így ha fel szeretne kerekíteni egy számot a legközelebbi egész számra vagy a legközelebbi meghatározott többszörösére, akkor hívhatja az Excel Mennyezeti.Matika munkalap funkcióját a VBA kódjából.

Emlékeztető az Excel munkalap felső határának szintaxisára. Matematikai függvény:

CEILING.MATH (Szám, [Jelentőség], [Mód]) ahol:

  • Szám - Az a szám, amelyet fel szeretne kerekíteni.
  • Jelentőség (Választható) - A többszörös, amelyre kerekíteni szeretné a számát.
  • Mód (Választható) - Azt szabályozza, hogy a negatív számok a nulla felé vagy attól kerekítve legyenek.

Tehát nézzünk egy példát, hogy lássuk, hogyan lehet elérni a Ceiling.Math feladatlap funkciót a VBA -kódban:

12345678910111213 Sub RoundUpToSignificance ()Halvány egységszám duplakéntHalvány mennyezetegységszám = 4.1221roofmathUnitcount = Application.WorksheetFunction.Ceiling_Math (egységszám, 5)MsgBox "Az érték" & plasztmathUnitcountEnd Sub

Az eredmény:

VBA RoundUp meghatározott szignifikancia eredményekig

Tényleges szám Jelentőség Mód Eredmény
4.1221 5
4.1221 3 6
4.1221 50 50
-4.1221 3 -3
-4.1221 3 -1 -6

VBA emelet - RoundDown meghatározott értékig

A VBA -nak nincs Floor.Math függvénye. Még egyszer azonban, ha le szeretne kerekíteni egy számot a legközelebbi egész számra vagy a legközelebbi meghatározott többszörösére, akkor hívhatja az Excel Floor.Math munkalap funkcióját a VBA -ból.

Emlékeztető az Excel munkalap szintjének szintaxisára. Matematikai függvény:

FLOOR.MATH (Szám, [Jelentőség], [Mód]), ahol:
• Szám - Az a szám, amelyet le szeretne kerekíteni.
• Jelentőség (Választható) - A többszörös, amelyre kerekíteni szeretné a számát.
• Üzemmód (Választható) - Azt szabályozza, hogy a negatív számok a nulla felé vagy attól kerekítve legyenek.

Tehát nézzünk egy példát, hogy láthassa, hogyan érheti el a Floor.Math feladatlap funkciót a VBA -kódjában:

1234567891011 Sub RoundDownToSignificance ()Halvány egységszám duplánDim floormathUnitcount As Doubleegységszám = 4,55555559floormathUnitcount = Application.WorksheetFunction.Floor_Math (unitcount, 2)MsgBox "Az érték" & floormathUnitcountEnd Sub

Az eredmény:

VBA RoundDown a megadott szignifikancia eredményekhez

Tényleges szám Jelentőség Mód Eredmény
4.55555559 4
4.55555559 3 3
4.55555559 50 0
-4.55555559 3 -6
-4.55555559 3 -1 -3

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave