VBA RoundUp-funktion

I Excel har vi rundfunktion som används för att runda siffrorna upp till de decimaler vi väljer. Anta att det finns ett nummer som är något som det här 8.5036 och vi vill runda det till två siffror. Det finns faktiskt två metoder att göra i excel, en är rundknappen vi har i excel som visas på skärmdumpen nedan och en annan är rundfunktionen. Skärmdumpen för den runda knappen är som följer.

Som förklarats ovan kan vi runda siffror i Excel med möjligheten att öka och minska decimal- eller rundfunktionen. På liknande sätt har vi i VBA också runda funktionen som används för att runda siffrorna till specifika decimaler. Tidigare använder rundfunktionen i Excel följande argument.

I Excel : Round (Antal, antal siffror efter decimal)

Siffran är antalet vi vill runda medan antalet siffror är mängden siffror vi vill runda. På samma sätt är excel VBA-roundupen samma som excel round-funktionen. Titta på det nedan.

I VBA : Round (Antal, (Antal siffror efter decimal))

Ovanstående är rundfunktionen i VBA men roundup-funktionen är något annorlunda. Syntaxen för rundfunktion i VBA och roundup-funktion är dock liknande. Det är som följer,

I VBA Roundup är:

 Roundup (Antal, (Antal siffror efter decimal)) 

RoundUp-funktionen liknar en rundfunktion i VBA excel men skillnaden är att den alltid avrundar antalet för de givna argumenten. Låt oss nu förstå de argument vi ger för att fungera.

Vi vet att numret är det nummer vi tillhandahåller som input som kommer att avrundas. Antalet siffror kan vara i tre scenarier enligt följande:

  • Om antalet siffror som tillhandahålls är större än noll, rundas antalet upp till den angivna decimalen.
  • Om antalet siffror tillhandahålls eftersom ingången är lika med noll, avrundas antalet till dess närmaste heltal.
  • Om antalet siffror som tillhandahålls som ingång är mindre än noll, rundas numret upp till vänster om dess decimalpunkt.

RoundUp-funktionen fungerar mycket som kalkylfunktionen för Excel. Tänk nu på att den har decimalvärden till utgången och returnerar det i dubbel. Det kommer att vara tydligt med några exempel. Vi kommer att lära oss alla tre aspekterna av roundupfunktion, dvs mindre än 0, lika med 0 och större än 0 i exempel. För våra exempel kommer vi att få input från en användare och roundup och visa den.

Hur man rundar upp med VBA?

Låt oss se exemplen på RoundUp i Excel VBA.

Du kan ladda ner denna VBA RoundUp Excel-mall här - VBA RoundUp Excel-mall

Exempel 1 - VBA Roundup

Låt oss börja med att antalet siffror som tillhandahålls är mindre än 0 och se hur resultaten dyker upp.

Steg 1: För att börja med VBA måste vi vara i VB Editor, vi kan göra det genom att klicka på utvecklarens flik och sedan på Visual basic som visas på skärmdumpen nedan,

Steg 2: Sätt nu in en modul i VB Editor där vi börjar med VBA-makron, dubbelklicka på modulen som öppnar ett annat fönster för oss där vi kommer att skriva vår kod,

Steg 3: Börja med en subfunktion enligt följande.

Koda:

 Sub Sample () Slut Sub 

Steg 4: Förklara två variabler som dubbla och en som ett heltal, en som lagrar värdet för input medan en kommer att lagra värdet för output och en kommer att lagra värdet för antalet siffror vi vill runda,

Koda:

 Underprov () Dim A, B Som dubbel dim C som heltal slut Sub 

Steg 5: I variabel A lagrar värdet på antalet som kommer att avrundas och i C lagra värdet för antalet siffror som kommer att avrundas. Båda värdena kommer vi att ta som input från en användare enligt följande,

Koda:

 Underprov () Dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange mindre än noll") Slut Sub 

Steg 6: I variabel B lagras det avrundade värdet på A enligt följande,

Koda:

 Underprov () Dim A, B Som dubbel dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange mindre än noll ") B = Application.WorksheetFunction.RoundUp (A, C) End Sub 

Steg 7: Använd nu msgbox-funktionen för att visa det avrundade värdet på A enligt följande,

Koda:

 Underprov () Dim A, B Som dubbel dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange mindre än noll ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Steg 8: Kör ovanstående kod och mata in A enligt följande,

Steg 9: Klicka på Ok som ger en ny inmatningsruta för att ange antalet siffror som ska avrundas, ge -1 som inmatning,

Steg 10: När vi trycker på ok får vi det slutliga avrundade resultatet,

Exempel 2 - VBA Roundup

I det här exemplet tar vi input från användaren för ett antal siffror som ska avrundas som 0.

Steg 1: Lägg till en ny modul i VBA, i modulen skriv en annan underfunktion för ett annat makro enligt följande,

Koda:

 Sub Sample1 () Slut Sub 

Steg 2: Förklara igen tre variabler, två av dem som dubbla medan en som ett heltal enligt följande,

Koda:

 Subprov1 () Dim A, B Som dubbel dim C som heltal End Sub 

Steg 3: Vi vet att A kommer att lagra ingången för antalet som ska avrundas och B lagrar antalet siffror som ska avrundas enligt följande,

Koda:

 Underprov1 () Dim A, B Som dubbel dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange lika med noll ") End Sub 

Steg 4: I variabel C kommer vi att runda in det ingångsvärde vi tog från användaren och visa det med hjälp av msgbox-funktionen enligt följande,

Koda:

 Underprov1 () Dim A, B Som dubbel dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange lika med noll ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Steg 5: Kör nu ovanstående kod genom att slå F5 och ge ingången för ett nummer som ska avrundas enligt följande,

Steg 6: Klicka på Ok och ange antalet siffror som ska avrundas som 0 enligt följande,

Steg 7: När vi klickar på Ok ser vi följande resultat,

Exempel 3 - VBA Roundup

Nu kommer vi att använda det sista och sista alternativet för att ge antalet siffror som är större än noll och se resultatet.

Steg 1: Lägg till en ny modul och lägg till en ny delfunktion enligt följande,

Koda:

 Sub Sample2 () Slut Sub 

Steg 2: Nu kommer vi igen att förklara tre variabler, två av dem som dubbla och en som ett heltal. Den ena lagrar värdet för ingången om antalet som ska avrundas medan det andra lagrar ingången på ett antal siffror,

Koda:

 Underprov2 () Dim A, B Som dubbel dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange större än noll ") End Sub 

Steg 3: I variabeln B lagras det avrundade värdet för A med roundup-funktionen enligt följande och använd msgbox-funktionen för att visa resultatet,

Koda:

 Underprov2 () Dim A, B Som dubbel dim C som heltal A = InputBox ("Ange ett värde", "Värde i decimaler") C = InputBox ("Ange antal siffror som ska avrundas", "Ange större än noll ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Steg 4: Nu kör vi koden och tillhandahåller ingången för antalet som ska avrundas,

Steg 5: Klicka på Ok och ge antalet siffror avrundade som 2,

Steg 6: Klicka på Ok för att se slutresultatet,

Saker att komma ihåg

Det är få saker som vi måste komma ihåg om VBA RoundUp.

  • Det liknar roundup i VBA och excel.
  • Det tar ett antal siffror som inmatning som mindre än 0 eller större än 0 eller lika med 0.
  • Det är faktiskt en kalkylfunktion som vi använder den i VBA.
  • Den utgång som returneras av denna funktion är dubbel.

Rekommenderade artiklar

Detta är en guide till VBA Roundup. Här diskuterar vi hur du använder Excel VBA Roundup tillsammans med några praktiska exempel och nedladdningsbar Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. Hur man använder VBA medan slingan?
  2. VBA Ta bort dubbletter
  3. Förstå VBA-datatyper
  4. VBA-sömn med exempel

Kategori: