Excel VBA RoundUp-funktion
Liknar kalkylfunktionen där vi avrundar siffrorna till närmaste heltal, i VBA har vi en RoundUp-funktion som minskar decimaltecknet för oss och syntaxen för att använda avrundningsfunktionen är som följer Runda upp (Antal, antal siffror efter decimal ) dessa två argument i funktionen är obligatoriska.
När vi arbetar med siffror och beräkningar får vi bråknummer efter hela numret, och det är ganska vanligt i vardagen. Vi bryr oss i allmänhet inte om decimalvärdena eftersom det inte påverkar vårt slutresultat. I dessa situationer måste vi avrunda siffrorna till närmaste heltal eller omedelbart heltal. Genom att använda RoundUp-funktionen kan vi faktiskt utföra denna uppgift.
Om du i VBA har sökt efter RoundUp-funktionen måste du inte ha hittat den eftersom den är en kalkylfunktion. För att få åtkomst till RoundUp-funktionen måste vi använda klassen VBA Worksheet Function.
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_2.png.webp)
Innan detta, kom ihåg syntaxen för RoundUp-funktionen.
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_3.png.webp)
Exempel
Låt oss utföra uppgiften att avrunda siffran ”288.5264”. Vi kommer att se alla siffror med detta exempel.
Exempel # 1 - När det andra argumentet är noll
Titta på nedanstående VBA-kod.
Koda:
Sub RoundUp_Example1 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, 0) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_4.png.webp)
- När du kör ovanstående kod kommer den angivna siffran, dvs. 288.5264, att konverteras till närmaste heltal, dvs. 289
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_5.png.webp)
Exempel # 2 - När det andra argumentet är 1
Titta på koden nedan för att se vad som händer när vi skickar en som ett andra argument.
Koda:
Sub RoundUp_Example2 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, 1) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_6.png.webp)
- Den här koden omvandlar det angivna numret till en decimal, dvs. 288,6
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_7.png.webp)
Exempel # 3 - När det andra argumentet är 2
Titta på koden nedan för att se vad som händer när vi passerar två som ett andra argument.
Koda:
Sub RoundUp_Example3 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, 2) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_8.png.webp)
- Den här koden omvandlar det angivna numret till två decimaler, dvs. 288,53
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_9.png.webp)
Exempel # 4 - När det andra argumentet är 3
Titta på koden nedan för att se vad som händer när vi passerar tre som ett andra argument.
Koda:
Sub RoundUp_Example4 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, 3) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_10.png.webp)
- Den här koden kommer att konvertera det angivna numret till tre decimaler, dvs. 288.527
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_11.png.webp)
Exempel # 5 - När det andra argumentet är -1
Titta på koden nedan för att se vad som händer när vi passerar minus ett som ett andra argument.
Koda:
Sub RoundUp_Example5 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, -1) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_12.png.webp)
- Denna kod omvandlar det angivna numret till närmaste tio, dvs. 290.
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_13.png.webp)
Exempel # 6 - När det andra argumentet är -2
Titta på koden nedan för att se vad som händer när vi passerar minus två som ett andra argument.
Koda:
Sub RoundUp_Example6 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, -2) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_14.png.webp)
- Denna kod omvandlar det angivna numret till närmaste hundra, dvs. 300.
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_15.png.webp)
Exempel # 7 - När det andra argumentet är -3
Titta på koden nedan för att se vad som händer när vi passerar minus tre som ett andra argument.
Koda:
Sub RoundUp_Example7 () Dim k As Double k = WorksheetFunction.RoundUp (288.5264, -3) MsgBox k End Sub
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_16.png.webp)
- Denna kod omvandlar numret till närmaste tusen, dvs 1000.
![](https://cdn.know-base.net/9513401/vba_roundup_funciton_to_round_up_numbers_in_excel_17.png.webp)
Så här kan vi använda ROUNDUP-funktionen i VBA som en del av kalkylbladets funktionsklass för att avrunda siffrorna baserat på det angivna andra argumentet.