VBA turas | Kaip naudoti „Excel VBA Round“ funkciją?
„Excel VBA“ apvaliosios funkcijos
Apvalioji funkcija VBA yra matematinė funkcija, kuri, kaip rodo pats pavadinimas, suapvalina arba suapvalina nurodytą skaičių iki konkretaus vartotojo nurodytų dešimtųjų skaičiaus rinkinio, ši funkcija naudoja apvalinimo logiką, net tai reiškia, kad reikia 5 nuoroda ir bet kuris skaičius po paskutinio skaičiaus po kablelio yra mažesnis nei 5, tada jis suapvalinamas žemyn ir atvirkščiai.
Galite suapvalinti skaičių iki dviejų skaitmenų po kablelio, trijų skaitmenų po kablelio arba be kablelio. Pvz., Jei turite numerį 5.8697. Jei suapvalinsite skaičių iki dviejų skaitmenų po kablelio, jis bus 5,87, jei suapvalinsite iki trijų skaitmenų, tada jis suapvalins iki 5,870, jei norite suapvalinti iki nulio, jis bus 6 -
Bankiniuose numeriuose visos dešimtainės kablelio vietos, kurios yra mažesnės nei 0,5, bus suapvalintos žemyn iki ankstesnio sveiko skaičiaus vertės, o visos dešimtainės kablelio vietos, kurios yra didesnės arba lygios 0,5, bus suapvalintos iki kito sveiko skaičiaus vertės.
Tikiuosi, kad darbalapyje naudojote funkciją ROUND. VBA taip pat galime naudoti šią funkciją, tačiau turime skirtumų nuo šių funkcijų. Šių dviejų funkcijų skirtumą pamatysime vėliau šiame straipsnyje.
Sintaksė
Pažvelkite į „Round“ funkcijos sintaksę.
Skaičius: tai skaičius, kurį bandome suapvalinti.
[Skaitmenų skaičius po dešimtainio skaičiaus]: kiek skaitmenų jums reikia po kablelio.
Pavyzdžiai
Šį „VBA Round Function Excel“ šabloną galite atsisiųsti čia - „VBA Round Function Excel“ šablonasTarkime, kad turite skaičių 4.534 ir norite suapvalinti iki dviejų skaitmenų.
Atlikite toliau nurodytus veiksmus.
1 veiksmas: paskelbkite kintamąjį kaip „Variant“.
Kodas:
Antrinis turas_pavyzdys1 () Dim K Kaip variantas Pabaiga
2 žingsnis: Šiam kintamajam „ k “ priskirkite reikšmę per funkciją ROUND.
Kodas:
Antrinis turas_pavyzdys1 () Dim K kaip variantas K = apvalus (pabaigos sub
3 žingsnis: skaičius yra ne kas kitas, o koks yra skaičius, kurį bandome suapvalinti, šiuo atveju skaičius yra 4,534
Kodas:
Antrinis turas_pavyzdys1 () Dim K kaip variantas K = apvalus (4.534, pabaigos sub
4 žingsnis: kiek skaitmenų turime suapvalinti, šiuo atveju turime suapvalinti iki 2 skaitmenų .
Kodas:
Antrinis turas_pavyzdys1 () Dim K kaip variantas K = apvalus (4.534, 2) galinis antrinis
5 žingsnis: Dabar pranešimų laukelyje VBA rodykite kintamojo „k“ vertę.
Kodas:
Antrasis turas_pavyzdys1 () Dim K kaip variantas K = apvalus (4.534, 2) MsgBox K Pabaiga
Paleiskite šį kodą ir pažiūrėkite, ką gauname.
Rezultatą gavome kaip 4,53, kai suapvalinome iki 2 skaitmenų.
Dabar pakeisiu skaičių iš 4.534 į 4.535 . Pažvelk, kas dabar vyksta.
Kodas:
Antrasis turas_pavyzdys1 () Dim K kaip variantas K = apvalus (4.535, 2) MsgBox K Pabaiga Sub
Dabar paleiskite kodą ir pažiūrėkite, koks yra rezultatas.
Gavome rezultatą, kuris buvo 4,54 dešimtainiu skaičiumi didesnis už ankstesnę 4,53 vertę. Taip yra todėl, kad šiame pavyzdyje skaičių pateikėme kaip 4,535, taigi po skaičiaus 3 kitas skaičius yra 5, taigi jis suapvalinamas iki kito skaičiaus, taigi 3 tampa 4.
Dabar aš pateiksiu numerį kaip 2.452678 ir bandysiu suapvalinti iki 3 skaitmenų.
Kodas:
Antrasis turas_pavyzdys2 () Dim K kaip variantas K = apvalus (2.452678, 3) MsgBox K End Sub
Paleiskite šį kodą, kad pamatytumėte rezultatą.
Rezultatas yra 2.453 .
2,45 2678 Čia skaičiai po 2 skaitmens po kablelio yra 2678. Po 2 skaičiaus kitas skaičius yra 6, kuris yra didesnis arba lygus 5, taigi jis suapvalinamas iki kito skaičiaus po kablelio.
Dabar naudosiu tą patį skaičių suapvalinti iki nulio ir pamatyti, kas nutiks.
Kodas:
Antrasis turas_pavyzdys3 () Dim K kaip variantas K = apvalus (2.452678, 0) MsgBox K End Sub
Paleiskite kodą ir pažiūrėkite, ką gauname.
Kadangi aš panaudojau apvalumą iki nulio, rezultatas buvo 2.
Priežastis, kodėl mes gavome rezultatą kaip 2, nes čia dešimtainis pirmasis skaičius yra 4, kuris yra mažesnis nei 0,5, todėl jis suapvalinamas žemyn.
Skirtumas tarp „Excel“ ir „VBA ROUND“ funkcijos
Daugiausia yra 2 skirtumai.
# 1 - abiejų funkcijų sintaksė:
Pažvelgus į abiejų funkcijų sintaksę, čia yra skirtumas.
„Excel“ apvalios sintaksė: apvalus (skaičius, skaitmenų skaičius po kablelio)
VBA turo sintaksė: apvalus (skaičius, [skaitmenų skaičius po kablelio)
Programoje „Excel“ abu argumentai yra privalomi, tačiau VBA antrasis argumentas yra neprivalomas.
VBA, jei ignoruosite antrąjį argumentą, numatytasis argumentas bus lygus nuliui, taigi gausime visą skaičių.
2 - rezultatai:
Šių dviejų funkcijų rezultatas yra skirtingas. Toliau pateikiami keli pavyzdžiai