VBA RoundUp-funksjon

I Excel har vi rundfunksjon som brukes til å runde tallene opp til desimalene vi velger. Anta at det er et tall som er noe som dette 8.5036, og vi vil runde det til to tall. Det er faktisk to metoder å gjøre i excel, en er rundknappen vi har i excel som vist på skjermdumpen nedenfor og en annen er rundfunksjon. Skjermbildet for den runde knappen er som følger.

Som forklart over, kan vi runde tall i Excel med mulighet for å øke og redusere desimal- eller rundfunksjon. Tilsvarende i VBA har vi også runde funksjonen som brukes til å runde tallene til spesifikke desimaler. Tidligere brukte rundefunksjonen i Excel følgende argumenter.

I Excel : runde (antall, antall sifre etter desimal)

Antallet er antallet vi vil avrunde, mens antall sifre er mengden sifre vi ønsker å runde. Tilsvarende er excel VBA-roundup den samme som excel round-funksjonen. Ta en titt på det nedenfor.

I VBA : Round (Antall, (Antall sifre etter desimal))

Ovennevnte er rundfunksjonen i VBA, men roundup-funksjonen er noe annerledes. Syntaks for rundfunksjon i VBA og roundup-funksjon er imidlertid lik. Det er som følger,

I VBA Roundup er:

 Roundup (Antall, (Antall sifre etter desimal)) 

RoundUp-funksjonen ligner en rundfunksjon i VBA excel, men forskjellen er at den alltid avrunder antallet for de gitte argumentene. La oss nå forstå argumentene vi gir for å fungere.

Vi vet at tallet er tallet vi gir som innspill som vil avrundes. Antall sifre kan være i tre scenarier som følger:

  • Hvis antallet angitte sifre er større enn null, blir antallet avrundet opp til den angitte desimalplassen.
  • Hvis antall sifre er oppgitt da inndata er lik null, blir antallet avrundet til nærmeste heltall.
  • Hvis antallet sifre som leveres som inndata nå er mindre enn null, blir antallet avrundet opp til venstre for desimalet.

RoundUp-funksjonen fungerer veldig likt regnearkfunksjonen til Excel. Husk nå da den har desimalverdier til utdataene den returnerer i dobbelt. Det vil være tydelig med noen få eksempler. Vi lærer alle de tre aspektene ved roundup-funksjon, dvs. mindre enn 0, lik 0 og større enn 0 i eksempler. For eksemplene våre vil vi komme med innspill fra en bruker og sammenstille og vise det.

Hvordan RoundUp ved hjelp av VBA?

La oss se eksemplene på RoundUp i Excel VBA.

Du kan laste ned denne VBA RoundUp Excel-malen her - VBA RoundUp Excel Template

Eksempel 1 - VBA Roundup

La oss begynne med at antallet sifre som er gitt er mindre enn 0 og se hvordan resultatene dukker opp.

Trinn 1: For å begynne med VBA må vi være i VB Editor, vi kan gjøre det ved å klikke på utviklerens fane og deretter på Visual basic som vist på skjermdumpen nedenfor,

Trinn 2: Sett nå inn en modul i VB Editor der vi skal begynne med VBA-makroer, dobbeltklikk på modulen som vil åpne et nytt vindu for oss der vi vil skrive koden vår,

Trinn 3: Start med en underfunksjon som følger.

Kode:

 Undereksempel () Slutt Sub 

Trinn 4: Forklar to variabler som doble og en som et heltall, en som vil lagre verdien for inndata mens en vil lagre verdien for utdata og en vil lagre verdien for antall sifre vi ønsker å sammenstille,

Kode:

 Underprøve () Dim A, B Som Dobbelt dim C som heltal Slutt Sub 

Trinn 5: I variabel A lagrer verdien på antallet som blir avrundet og i C lagrer verdien for antall sifre som blir avrundet. Begge verdiene vil vi ta som input fra en bruker som følger,

Kode:

 Underprøve () Dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi mindre enn null") Slutt sub 

Trinn 6: I variabel B lagrer du den avrundede verdien til A som følger,

Kode:

 Underprøve () Dim A, B Som dobbelt dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi mindre enn null ") B = Application.WorksheetFunction.RoundUp (A, C) End Sub 

Trinn 7: Bruk nå msgbox-funksjonen til å vise den avrundede verdien til A som følger,

Kode:

 Underprøve () Dim A, B Som dobbelt dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi mindre enn null ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Trinn 8: Kjør koden ovenfor og gi innspill til A som følger,

Trinn 9: Klikk på Ok som vil gi en annen inntastingsboks for å gi antall sifre som skal avrundes, gi -1 som inndata,

Trinn 10: Når vi trykker på ok, får vi det endelige avrundede resultatet,

Eksempel 2 - VBA Roundup

I dette eksemplet vil vi ta innspill fra brukeren for et antall sifre som skal avrundes som 0.

Trinn 1: Legg til en ny modul i VBA, i modulen skriv en annen underfunksjon for en annen makro som følger,

Kode:

 Sub Sample1 () Slutt Sub 

Trinn 2: Deklar tre variabler, to av dem som doble mens en som et heltall som følger,

Kode:

 Underprøve1 () Dim A, B Som dobbel dim C som heltal Slutt Sub 

Trinn 3: Vi vet at A vil lagre inndata for antallet som skal avrundes og B vil lagre antall sifre som skal avrundes som følger,

Kode:

 Underprøve1 () Dim A, B Som dobbel dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi lik null ") Slutt sub 

Trinn 4: I variabel C avrunder vi inngangsverdien vi tok fra brukeren og viser den ved å bruke msgbox-funksjonen som følger,

Kode:

 Underprøve1 () Dim A, B Som dobbel dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi lik null ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Trinn 5: Kjør nå koden ovenfor ved å trykke på F5 og gi inndata for et nummer som skal avrundes som følger,

Trinn 6: Klikk på Ok og angi antall sifre som skal avrundes som 0 som følger,

Trinn 7: Når vi klikker på Ok, ser vi følgende resultat,

Eksempel 3 - VBA Roundup

Nå vil vi bruke det endelige og siste alternativet for å gi antall sifre som skal være større enn null og se resultatet.

Trinn 1: Legg til en ny modul, og legg til en ny underfunksjon på følgende måte,

Kode:

 Sub Sample2 () Slutt Sub 

Trinn 2: Nå vil vi igjen erklære tre variabler, to av dem som doble og en som et heltall. Man vil lagre verdien for inndata hvis antallet som skal avrundes, mens en annen vil lagre inndata for et antall sifre,

Kode:

 Undereksempel2 () Dim A, B Som dobbelt dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi større enn null ") Slutt sub 

Trinn 3: I variabelen B lagrer den avrundede verdien til A med rundfunksjon som følger og bruk msgbox-funksjonen for å vise resultatet,

Kode:

 Undereksempel2 () Dim A, B Som dobbelt dim C som heltall A = InputBox ("Angi en verdi", "Verdi i desimaler") C = InputBox ("Angi antall sifre som skal avrundes", "Angi større enn null ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Trinn 4: Nå kjører vi koden og gir inndata for nummeret som skal avrundes,

Trinn 5: Klikk på Ok og gi antall sifre avrundet som 2,

Trinn 6: Klikk på OK for å se det endelige resultatet,

Ting å huske

Det er få ting vi må huske på VBA RoundUp.

  • Det ligner Roundup i VBA og utmerker seg.
  • Det tar et antall sifre som input som mindre enn 0 eller større enn 0 eller lik 0.
  • Det er faktisk en regnearkfunksjon vi bruker den i VBA.
  • Utgangen som returneres av denne funksjonen er dobbelt.

Anbefalte artikler

Dette er en guide til VBA Roundup. Her diskuterer vi hvordan du bruker Excel VBA Roundup sammen med få praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. Hvordan bruke VBA mens sløyfe?
  2. VBA Fjern duplikater
  3. Forstå VBA-datatyper
  4. VBA Sleep med eksempler

Kategori: