Krog VBA
Funkcija zaokroževanja VBA zaokroži številke na določeno število števk.
Sintaksa okrogle funkcije VBA
Sintaksa okrogle funkcije VBA je:
Okrogla (izraz, [decimalna_mesta]), kjer:
- Izraz - število, ki ga želite zaokrožiti.
- Decimalna mesta (Neobvezno) - Celo število, ki podaja število decimalnih mest, ki jih je treba zaokrožiti. Vrednost mora biti večja ali enaka 0 (> = 0). Če je prazno, se uporabi privzeta vrednost 0, kar pomeni, da funkcija zaokroži na najbližje celo število.
Torej, poglejmo primer, da boste lahko videli, kako deluje funkcija VBA Round, zaokroževanje na 1 decimalno mesto:
12345 | Podkrog1 ()Msgbox Round (7.25, 1)End Sub |
Nastali MessageBox:
VBA zaokroži spremenljivko
V zgornjem primeru smo številko, ki jo je treba zaokrožiti, vnesli neposredno v funkcijo, običajno pa zaokrožite spremenljivko. Spodaj je primer uporabe spremenljivke:
Opomba: Za shranjevanje decimalnih vrednosti uporabljamo vrsto spremenljivke Double.
123456789 | Sub RoundUsingVariable ()Zatemni enoto kot dvojnoštevilo enot = 7,25MsgBox "Vrednost je" & Round (število enot, 1)End Sub |
Rezultat je:
Rezultati zaokroževanja VBA
Dejanska številka | Število decimalnih mest | Rezultat |
---|---|---|
7.25 | 0 | 7 |
7.25 | 1 | 7.2 |
7.25 | 2 | 7.25 |
-7.25 | 1 | -7.2 |
-7.25 | 2 | -7.25 |
Utrujen od iskanja primerov kode VBA? Preizkusite AutoMacro!
VBA vrednost okroglih celic
Vrednost celice lahko zaokrožite tudi neposredno v VBA:
123 | Sub RoundCell ()Razpon ("A1"). Vrednost = okroglo (razpon ("A1"). Vrednost, 2)End Sub |
Funkcija VBA RoundUp
Recimo, da želite zaokrožiti številko z uporabo VBA. Vgrajene enakovredne funkcije VBA RoundUp ni, namesto tega lahko iz svoje kode VBA pokličete funkcijo delovnega lista Excel RoundUp:
1 | roundupUnitcount = Application.WorksheetFunction.RoundUp (število enot, 3) |
Excelove funkcije delovnega lista so na voljo za uporabo v VBA z uporabo Funkcija delovnega lista predmet. Edine funkcije delovnega lista, ki jih ne morete poklicati, so tiste, ki že imajo vgrajen ekvivalent VBA.
Opomnik o skladnji funkcije zaokroževanja delovnega lista Excel:
ROUNDUP (številka, številke), kjer:
- Številka - Število, ki ga želite zaokrožiti.
- Številke - število številk, ki jih želite zaokrožiti.
Torej, poglejmo primer, da boste lahko videli, kako dostopati do funkcije delovnega lista RoundUp v kodi VBA:
12345678910111213 | Sub RoundUp ()Zatemni enoto kot dvojnoZaokroži zatemnitevštevilo enot = 7,075711roundupUnitcount = Application.WorksheetFunction.RoundUp (število enot, 4)MsgBox "Vrednost je" & roundupUnitcountEnd Sub |
Rezultat je:
Zaokrožite na najbližje celo število
Zaokrožite na najbližje celo število tako, da kot število decimalnih mest določite 0:
12345 | Sub RoundUpWhole ()Aplikacija MsgBox.WorksheetFunction.RoundUp (7.1, 0)End Sub |
Dosežen rezultat:
Programiranje VBA | Generator kod deluje za vas!
Rezultati funkcije RoundUp
Dejanska številka | Številke | Rezultat |
---|---|---|
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 |
Funkcija VBA RoundDown
Recimo, da želite zaokrožiti številko navzdol z uporabo VBA. Tudi vgrajene enakovredne funkcije VBA RoundDown ni, namesto tega bi morali iz kode VBA poklicati funkcijo Excel RoundDown Worksheet.
Opomnik o skladnji funkcije Excel RoundDown na delovnem listu:
ROUNDDOWN (številka, številke), kjer:
• Številka - Številka, ki jo želite zaokrožiti navzdol.
• Številke - Število številk, ki jih želite zaokrožiti.
Torej, poglejmo primer, da boste lahko videli, kako dostopati do funkcije delovnega lista RoundDown v kodi VBA:
12345678910111213 | Sub RoundDown ()Zatemni enoto kot dvojnoZatemni okroglo smerUnitcount As Doubleštevilo enot = 5,225193rounddownUnitcount = Application.WorksheetFunction.RoundDown (število enot, 4)MsgBox "Vrednost je" & rounddownUnitcountEnd Sub |
Rezultat je:
RoundDown do najbližje cele številke
Zaokrožite lahko na najbližje celo število tako, da kot število decimalnih mest določite 0:
12345 | Sub RoundDownWhole ()Aplikacija MsgBox.WorksheetFunction.RoundDown (7.8, 0)End Sub |
Rezultat je:
Rezultati funkcije RoundDown
Dejanska številka | Številke | Rezultat |
---|---|---|
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 |
Programiranje VBA | Generator kod deluje za vas!
Druge funkcije zaokroževanja VBA
VBA zgornja meja - zaokroži na določen pomen
VBA nima enakovredne funkcije Ceiling.Math, zato, če želite zaokrožiti število na najbližje celo število ali na najbližji podani večkratnik pomena, lahko iz kode VBA pokličete Excelovo funkcijo delovnega lista Ceiling.Math.
Opomnik o skladnji stropa Excelovega delovnega lista. Matematična funkcija:
CEILING.MATH (Število, [Pomen], [Način]), kjer:
- Številka - Število, ki ga želite zaokrožiti.
- Pomembnost (Neobvezno) - Večkratnik, na katerega želite zaokrožiti številko.
- Način (Neobvezno) - Nadzira, ali se negativna števila zaokrožijo proti nič ali stran od nje.
Torej, poglejmo primer, da boste lahko videli, kako dostopati do funkcije delovnega lista Ceiling.Math v kodi VBA:
12345678910111213 | Sub RoundUpToSignintage ()Zatemni enoto kot dvojnoZatemni strop Unitscount As Doubleštevilo enot = 4.1221uppermathUnitcount = Application.WorksheetFunction.Ceiling_Math (število enot, 5)MsgBox "Vrednost je" & uppermathUnitcountEnd Sub |
Rezultat je:
Zaokroževanje VBA do rezultatov določenega pomena
Dejanska številka | Pomembnost | Način | Rezultat |
---|---|---|---|
4.1221 | 5 | ||
4.1221 | 3 | 6 | |
4.1221 | 50 | 50 | |
-4.1221 | 3 | -3 | |
-4.1221 | 3 | -1 | -6 |
VBA nadstropje - zaokroženo navzdol do določenega pomena
VBA nima enakovredne funkcije Floor.Math. Če pa želite zaokrožiti številko na najbližje celo število ali na najbližji večkratnik pomena, lahko znova pokličete Excelovo funkcijo Floor.Math delovnega lista iz VBA.
Opomnik o skladnji nadstropja delovnega lista Excel. Matematična funkcija:
FLOOR.MATH (Število, [Pomen], [Način]), kjer:
• Število - Število, ki ga želite zaokrožiti navzdol.
• Pomembnost (Neobvezno) - Večkratnik, na katerega želite zaokrožiti številko.
• Način (Neobvezno) - Nadzira, ali se negativna števila zaokrožijo proti nič ali stran od nje.
Torej, poglejmo primer, da boste lahko videli, kako dostopati do funkcije delovnega lista Floor.Math v kodi VBA:
1234567891011 | Sub RoundDownToSignintage ()Zatemni enoto kot dvojnoZatemni talno površino Unnitcount As Doubleštevilo enot = 4,55555559floormathUnitcount = Application.WorksheetFunction.Floor_Math (število enot, 2)MsgBox "Vrednost je" & floormathUnitcountEnd Sub |
Rezultat je:
Rezultati VBA RoundDown do določenega pomena
Dejanska številka | Pomembnost | Način | Rezultat |
---|---|---|---|
4.55555559 | 4 | ||
4.55555559 | 3 | 3 | |
4.55555559 | 50 | 0 | |
-4.55555559 | 3 | -6 | |
-4.55555559 | 3 | -1 | -3 |