VBA Round, RoundUp un RoundDown funkcijas

VBA kārta

VBA apaļā funkcija noapaļo skaitļus līdz noteiktam ciparu skaitam.

VBA apaļās funkcijas sintakse

VBA apaļās funkcijas sintakse ir šāda:

Kārta (izteiksme, [decimāldaļas]), kur:

  • Izteiksme - noapaļojams skaitlis.
  • Decimal_places (Neobligāti) - vesels skaitlis, kas norāda noapaļojamo zīmju skaitu aiz komata. Vērtībai jābūt lielākai vai vienādai ar 0 (> = 0). Ja tā ir tukša, tiek izmantota noklusējuma vērtība 0, kas nozīmē, ka funkcija noapaļo līdz tuvākajam veselam skaitlim.

Tātad, aplūkosim piemēru, lai jūs varētu redzēt, kā darbojas funkcija VBA Round, noapaļojot līdz vienai zīmei aiz komata:

12345 1. apakškārta ()Msgbox Round (7.25, 1)Beigu apakš

Rezultātā MessageBox:

VBA Apaļš mainīgais

Iepriekš minētajā piemērā mēs ievadījām noapaļojamo skaitli tieši funkcijā, tomēr parasti tā vietā noapaļojat mainīgo. Tālāk ir sniegts piemērs, kurā tiek izmantots mainīgais:

Piezīme. Mēs izmantojam dubultā mainīgā veidu, lai saglabātu decimālās vērtības.

123456789 ApakškārtaUsingVariable ()Dim blīvums kā dubultāvienību skaits = 7,25MsgBox "Vērtība ir" un apaļa (vienību skaits, 1)Beigu apakš

Rezultāts ir šāds:

VBA noapaļošanas rezultāti

Faktiskais numurs Decimāldaļu skaits Rezultāts
7.25 0 7
7.25 1 7.2
7.25 2 7.25
-7.25 1 -7.2
-7.25 2 -7.25

Vai esat noguris no VBA koda piemēru meklēšanas? Izmēģiniet AutoMacro!

VBA apaļas šūnas vērtība

Šūnas vērtību var noapaļot arī tieši VBA:

123 Apakššūna ()Diapazons ("A1"). Vērtība = apaļa (diapazons ("A1"). Vērtība, 2)Beigu apakš

VBA RoundUp funkcija

Pieņemsim, ka vēlaties noapaļot skaitli uz augšu, izmantojot VBA. Nav iebūvētas VBA RoundUp līdzvērtīgas funkcijas, tā vietā jūs varat izsaukt Excel RoundUp darblapas funkciju no sava VBA koda:

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

Excel darblapas funkcijas ir pieejamas izmantošanai VBA, izmantojot DarblapaFunkcija objekts. Vienīgās darblapas funkcijas, kurām nevar piezvanīt, ir tās, kurām jau ir iebūvēts VBA ekvivalents.

Atgādinājums par Excel darblapas RoundUp funkcijas sintaksi:

ROUNDUP (numurs, cipari), kur:

  • Skaitlis - skaitlis, kuru vēlaties noapaļot uz augšu.
  • Cipari - ciparu skaits, kuru vēlaties noapaļot.

Tātad, aplūkosim piemēru, lai redzētu, kā piekļūt RoundUp darblapas funkcijai savā VBA kodā:

12345678910111213 Sub RoundUp ()Dim blīvums kā dubultāDim roundupUnitcount As Doublevienības skaits = 7,075711roundupUnitcount = Application.WorksheetFunction.RoundUp (unitcount, 4)MsgBox "Vērtība ir" & roundupUnitcountBeigu apakš

Rezultāts ir šāds:

RoundUp līdz tuvākajam veselajam skaitlim

Varat noapaļot uz augšu līdz tuvākajam veselajam skaitlim, norādot 0 kā decimālzīmi:

12345 Sub RoundUpWhole ()MsgBox Application.WorksheetFunction.RoundUp (7.1, 0)Beigu apakš

Iegūtais rezultāts:

VBA programmēšana | Kodu ģenerators strādā jūsu labā!

RoundUp funkciju rezultāti

Faktiskais numurs Cipari Rezultāts
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 funkcija

Pieņemsim, ka vēlaties noapaļot skaitli uz leju, izmantojot VBA. Nav arī iebūvētas VBA RoundDown ekvivalentas funkcijas, tā vietā jūs atkal izsauksit Excel RoundDown darblapas funkciju no sava VBA koda.

Atgādinājums par Excel darblapas RoundDown funkcijas sintaksi:

APAKŠI (skaitlis, cipari), kur:

• Skaitlis - skaitlis, kuru vēlaties noapaļot uz leju.
• Cipari - ciparu skaits, kuru vēlaties noapaļot.

Tātad, aplūkosim piemēru, lai redzētu, kā piekļūt RoundDown darblapas funkcijai savā VBA kodā:

12345678910111213 Sub RoundDown ()Dim blīvums kā dubultāDim aptumšošanaUnitcount As Doublevienības skaitlis = 5,225193rounddownUnitcount = Application.WorksheetFunction.RoundDown (unitcount, 4)MsgBox "Vērtība ir" & rounddownUnitcountBeigu apakš

Rezultāts ir šāds:

Noapaļot līdz tuvākajam veselajam skaitlim

Varat noapaļot uz leju līdz tuvākajam veselajam skaitlim, norādot 0 kā decimālzīmi:

12345 Sub RoundDownWhole ()MsgBox Application.WorksheetFunction.RoundDown (7.8, 0)Beigu apakš

Rezultāts ir šāds:

RoundDown funkciju rezultāti

Faktiskais numurs Cipari Rezultāts
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 programmēšana | Kodu ģenerators strādā jūsu labā!

Citas VBA noapaļošanas funkcijas

VBA griesti - RoundUp līdz noteiktai nozīmei

VBA nav Ceiling.Math funkcijas ekvivalenta, tādēļ, ja vēlaties noapaļot skaitli uz augšu līdz tuvākajam veselam skaitlim vai līdz tuvākajam norādītajam nozīmības reizinājumam, varat izsaukt Excel griestu. Matemātikas funkciju no sava VBA koda.

Atgādinājums par Excel darblapas griestu sintaksi. Matemātikas funkcija:

CEILING.MATH (skaitlis, [nozīmīgums], [režīms]), kur:

  • Skaitlis - skaitlis, kuru vēlaties noapaļot uz augšu.
  • Nozīme (Neobligāti) - reizinājums, uz kuru vēlaties noapaļot savu numuru.
  • Režīms (Neobligāti) - Kontrolē, vai negatīvie skaitļi ir noapaļoti uz nulli vai prom no tā.

Tātad, aplūkosim piemēru, lai jūs varētu redzēt, kā piekļūt griestiem. Matemātikas darblapas funkcija jūsu VBA kodā:

12345678910111213 Sub RoundUpToSignificance ()Dim blīvums kā dubultāDim griestu matricaUnitcount As Doublevienību skaits = 4.1221roofmathUnitcount = Application.WorksheetFunction.Ceiling_Math (vienību skaits, 5)MsgBox "Vērtība ir" & maximummathUnitcountBeigu apakš

Rezultāts ir šāds:

VBA RoundUp līdz noteiktiem nozīmīguma rezultātiem

Faktiskais numurs Nozīme Režīms Rezultāts
4.1221 5
4.1221 3 6
4.1221 50 50
-4.1221 3 -3
-4.1221 3 -1 -6

VBA stāvs - noapaļots līdz noteiktai nozīmei

VBA nav arī Floor.Math funkcijas ekvivalenta. Tomēr vēlreiz, ja vēlaties noapaļot skaitli uz leju līdz tuvākajam veselam skaitlim vai līdz tuvākajam norādītajam nozīmības daudzkārtnei, varat izsaukt Excel Floor.Math darblapas funkciju no VBA.

Atgādinājums par Excel darblapas grīdas sintaksi. Matemātikas funkcija:

FLOOR.MATH (skaitlis, [nozīme], [režīms]), kur:
• Skaitlis - skaitlis, kuru vēlaties noapaļot uz leju.
• Nozīme (Neobligāti) - reizinājums, uz kuru vēlaties noapaļot savu numuru.
• Režīms (Neobligāti) - Kontrolē, vai negatīvie skaitļi ir noapaļoti uz nulli vai pret to.

Tātad, aplūkosim piemēru, lai jūs varētu redzēt, kā piekļūt Flora.Math darblapas funkcijai savā VBA kodā:

1234567891011 Sub RoundDownToSignificance ()Dim blīvums kā dubultāDim floormathUnitcount As Doublevienību skaits = 4,55555559floormathUnitcount = Application.WorksheetFunction.Floor_Math (vienību skaits, 2)MsgBox "Vērtība ir" & floormathUnitcountBeigu apakš

Rezultāts ir šāds:

VBA RoundDown līdz norādītajiem nozīmīguma rezultātiem

Faktiskais numurs Nozīme Režīms Rezultāts
4.55555559 4
4.55555559 3 3
4.55555559 50 0
-4.55555559 3 -6
-4.55555559 3 -1 -3

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave