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 |