VBA Round-, RoundUp- ja RoundDown -toiminnot

VBA -kierros

VBA -pyöreä toiminto pyöristää numerot tiettyyn numeroon.

Pyöreän VBA -funktion syntaksi

VBA Round -toiminnon syntaksi on:

Pyöreä (lauseke, [desimaalipaikat]), jossa:

  • Lauseke - pyöristettävä luku.
  • Desimaalin tarkkuudella (Valinnainen) - Kokonaisluku, joka määrittää pyöristettävien desimaalien määrän. Arvon on oltava suurempi tai yhtä suuri kuin 0 (> = 0). Jos tyhjä, käytetään oletusarvoa 0, mikä tarkoittaa, että funktio pyöristää lähimpään kokonaislukuun.

Katsotaanpa esimerkkiä, jotta näet, miten VBA Round -toiminto toimii pyöristettynä yhden desimaalin tarkkuuteen:

12345 Alakierros1 ()Msgbox Round (7.25, 1)End Sub

Tuloksena oleva MessageBox:

VBA Kierrä muuttuja

Yllä olevassa esimerkissä kirjoitimme pyöristettävän luvun suoraan funktioon, yleensä kuitenkin pyöristät muuttujan. Seuraavassa on esimerkki muuttujan käyttämisestä:

Huomautus: Käytämme Double -muuttujatyyppiä desimaaliarvojen tallentamiseen.

123456789 OsakierrosKäytettäväVariable ()Himmennä yksikkömäärä kaksinkertaisenayksikkömäärä = 7,25MsgBox "Arvo on" ja pyöreä (yksikkömäärä, 1)End Sub

Tulos on:

VBA -pyöristystulokset

Todellinen numero Desimaalipaikkojen määrä Tulos
7.25 0 7
7.25 1 7.2
7.25 2 7.25
-7.25 1 -7.2
-7.25 2 -7.25

Oletko kyllästynyt etsimään esimerkkejä VBA -koodista? Kokeile AutoMacroa!

VBA Pyöreä solun arvo

Voit myös pyöristää solun arvon suoraan VBA: ssa:

123 Alikierrosolu ()Alue ("A1"). Arvo = Pyöreä (Alue ("A1"). Arvo, 2)End Sub

VBA RoundUp -toiminto

Oletetaan, että haluat pyöristää luvun ylöspäin VBA: n avulla. Sisäänrakennettua VBA RoundUp -toimintoa ei ole, sen sijaan voit kutsua Excel RoundUp -arkki-funktion VBA-koodistasi:

1 roundupUnitcount = Application.WorksheetFunction.RoundUp (yksikkömäärä, 3)

Excelin laskentataulukkotoiminnot ovat käytettävissä VBA: ssa käyttämällä LaskentataulukkoToiminto esine. Ainoat laskentataulukon toiminnot, joita et voi soittaa, ovat ne, joissa on jo sisäänrakennettu VBA-vastine.

Muistutus Excel -laskentataulukon RoundUp -toiminnon syntaksista:

ROUNDUP (luku, numerot) missä:

  • Numero - Numero, jonka haluat pyöristää ylöspäin.
  • Numerot - Numeroiden lukumäärä, jonka haluat pyöristää.

Katsotaanpa siis esimerkkiä, jotta näet kuinka voit käyttää RoundUp -laskentataulukkotoimintoa VBA -koodissasi:

12345678910111213 Sub RoundUp ()Himmennä yksikkömäärä kaksinkertaisenaDim roundupUnitcount As Doubleyksikkömäärä = 7,075711roundupUnitcount = Application.WorksheetFunction.RoundUp (yksikkömäärä, 4)MsgBox "Arvo on" & roundupUnitcountEnd Sub

Tulos on:

RoundUp lähimpään kokonaisnumeroon

Voit pyöristää ylöspäin lähimpään kokonaislukuun määrittämällä 0 desimaalilukuna:

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

Tulos toimitettiin:

VBA -ohjelmointi | Koodigeneraattori toimii sinulle!

RoundUp -toiminnon tulokset

Todellinen numero Numerot Tulos
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 -toiminto

Oletetaan, että haluat pyöristää numeron alaspäin VBA: n avulla. Myöskään sisäänrakennettua VBA RoundDown -toimintoa ei ole, vaan sen sijaan kutsut Excel RoundDown -arkki-funktiota VBA-koodistasi.

Muistutus Excel -laskentataulukon RoundDown -toiminnon syntaksista:

ROUNDDOWN (luku, numerot) missä:

• Numero - Numero, jonka haluat pyöristää alaspäin.
• Numerot - Numeroiden lukumäärä, jonka haluat pyöristää.

Katsotaanpa siis esimerkkiä, jotta näet kuinka voit käyttää RoundDown -laskentataulukkotoimintoa VBA -koodissasi:

12345678910111213 Osa RoundDown ()Himmennä yksikkömäärä kaksinkertaisenaHimmennä alaspäin Unitcount As Doubleyksikkömäärä = 5,225193rounddownUnitcount = Application.WorksheetFunction.RoundDown (yksikkömäärä, 4)MsgBox "Arvo on" & rounddownUnitcountEnd Sub

Tulos on:

RoundDown lähimpään kokonaisnumeroon

Voit pyöristää alas lähimpään kokonaislukuun määrittämällä 0 desimaalilukuna:

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

Tulos on:

RoundDown -toiminnon tulokset

Todellinen numero Numerot Tulos
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 -ohjelmointi | Koodigeneraattori toimii sinulle!

Muut VBA -pyöristystoiminnot

VBA -katto - RoundUp tietylle merkitykselle

VBA: lla ei ole Ceiling.Math -funktion vastinetta, joten jos haluat pyöristää luvun ylöspäin lähimpään kokonaislukuun tai lähimpään määritettyyn merkityskertoimeen, voit soittaa Excelin Ceiling.Math -laskentataulukkofunktioon VBA -koodistasi.

Muistutus Excel -laskentataulukon katon syntaksista. Matematiikkatoiminto:

CEILING.MATH (luku, [merkitys], [tila]) missä:

  • Numero - Numero, jonka haluat pyöristää ylöspäin.
  • Merkitys (Valinnainen) - Monikerta, johon haluat pyöristää numerosi.
  • -Tila (Valinnainen) - Määrittää, pyöristetäänkö negatiiviset luvut nollaa kohti vai pois.

Katsotaanpa siis esimerkkiä, jotta näet kuinka pääset käyttämään Ceiling.Math -laskentataulukkotoimintoa VBA -koodissasi:

12345678910111213 Sub RoundUpToSignificance ()Himmennä yksikkömäärä kaksinkertaisenaHimmennä kattomattoUnitcount As Doubleyksikkömäärä = 4.1221roofmathUnitcount = Application.WorksheetFunction.Ceiling_Math (yksikkömäärä, 5)MsgBox "Arvo on" & roofmathUnitcountEnd Sub

Tulos on:

VBA RoundUp määritettyihin merkittävyystuloksiin

Todellinen numero Merkitys -Tila Tulos
4.1221 5
4.1221 3 6
4.1221 50 50
-4.1221 3 -3
-4.1221 3 -1 -6

VBA -kerros - pyöreä alaspäin määritettyyn merkitykseen

VBA: lla ei ole myöskään Floor.Math -funktion vastinetta. Kuitenkin jälleen kerran, jos haluat pyöristää luvun alaspäin lähimpään kokonaislukuun tai lähimpään määritettyyn merkityskertoimeen, voit soittaa Excelin Floor.Math -laskentataulukkofunktiolle VBA: sta.

Muistutus Excel -laskentataulukon kerroksen syntaksista. Matematiikkatoiminto:

FLOOR.MATH (luku, [merkitys], [tila]), jossa:
• Numero - Numero, jonka haluat pyöristää alaspäin.
• Merkitys (Valinnainen) - Monikerta, johon haluat pyöristää numerosi.
• Tila (Valinnainen) - Määrittää, pyöristetäänkö negatiiviset luvut nollaa kohti vai pois.

Katsotaanpa siis esimerkkiä, jotta näet kuinka pääset käyttämään Floor.Math -laskentataulukkotoimintoa VBA -koodissasi:

1234567891011 Sub RoundDownToSignificance ()Himmennä yksikkömäärä kaksinkertaisenaHimmennä lattiamattoUnitcount Doubleyksikkömäärä = 4,55555559floormathUnitcount = Application.WorksheetFunction.Floor_Math (yksikkömäärä, 2)MsgBox "Arvo on" & floormathUnitcountEnd Sub

Tulos on:

VBA RoundDown määritettyihin merkittävyystuloksiin

Todellinen numero Merkitys -Tila Tulos
4.55555559 4
4.55555559 3 3
4.55555559 50 0
-4.55555559 3 -6
-4.55555559 3 -1 -3

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave