VBA-formatnummer - Hur formaterar jag nummer med VBA NumberFormat?

Innehållsförteckning

Formateringsfunktionen i VBA används för att formatera de angivna värdena i önskat format, den här funktionen har i grunden två obligatoriska argument, en är ingången som tas i form av en sträng och det andra argumentet är den typ av format vi vill använda till exempel om vi använder Format (.99, ”Procent”) kommer detta att ge oss resultatet som 99%.

Formatnummer i VBA Excel

VBA står långt före från vanliga excelfunktioner. VBA har många av sina inbyggda funktioner, precis som hur vi har mer än 500 operationer i kalkylbladet. En sådan formel i VBA är "Format Number".

Ja, du hörde det rätt. Vi har en funktion som heter “FormatNumber” i VBA. I den här artikeln tar vi en fullständig rundtur i denna funktion exklusivt.

Hur formaterar jag nummer med VBA NumberFormat?

Som själva funktionsnamnet säger kommer det att formatera det angivna numret enligt formateringsinstruktionerna från användaren.

Talformatering är inget annat än att lägga till decimaler, stänga negativa tal inom parentes, visa ledande nollor för decimalvärden etc. Med hjälp av VBA FormatNumber- funktionen kan vi använda formateringsstilen på de siffror vi arbetar med. Nedan visas funktionens syntax

  • Uttryck: Detta är inget annat än det nummer vi behöver formatera.
  • Siffror efter decimal: Hur många siffror du vill ha för decimaler för höger sida av numret.
  • Inkludera ledande siffra: ledande siffra är inget annat än siffror innan numret börjar. Detta gäller för värdena mindre än 1 men större än -1.
    • Om du vill visa noll före decimalvärdet kan du skicka argumentet som SANT eller -1 så blir resultatet. “0,55”
    • Om du inte vill visa noll före decimalvärdet kan du skicka argumentet som FALSE eller 0, och resultatet blir “.55.”
    • Som standard är värdet -2, dvs. regionala datorinställningar.
  • Använd föräldrar för negativa siffror: Om du vill visa de negativa siffrorna inom parentes kan du skicka argumentet som SANT eller -1 så blir resultatet. “(255)”
    • Om du vill visa de negativa siffrorna utan parentes kan du skicka argumentet som FALSE eller 0, så blir resultatet. “-255.”
  • Gruppsiffror: Oavsett om du vill lägga till tusen avgränsare eller inte. Om ja, är SANT eller -1 argumentet. Om inte, är FALSE eller 0 argumentet. Som standard är värdet -2, dvs. lika med regionala datorinställningar.

Exempel på Excel VBA FormatNumber-funktion

Vi kommer att se de praktiska exemplen på Excel VBA Format Number-funktionen. Vi kommer att utföra varje argument separat.

Skapa för detta ändamål makronamnet och förklara en av variablerna som en sträng. Vi måste rapportera variabeln som en sträng eftersom resultatet som ges av VBA-funktionen FormatNumber är endast som sträng.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String End Sub

Exempel # 1 - Lägg till decimaler framför numret

Steg # 1 - Antag att vi har arbetat med siffran 25000, och vi måste formatera det och lägga till decimaler till höger om numret. Tilldela ett värde till vår variabel.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (End Sub

Steg # 2 - Först och främst är ett uttryck, dvs antalet vi behöver formatera, så vårt nummer är 25000.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, End Sub

Steg 3 - Nästa är hur många siffror vi behöver lägga till, dvs. två nummer.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2) End Sub

Steg # 4 - Visa variabelns värde i meddelandefältet VBA.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2) MsgBox MyNum End Sub

Steg # 5 - Resultatet av detta makro är så här.

Vi kan se två decimaler till höger om numret.

Exempel # 2 - Gruppnummer, dvs. tusen separator

För samma nummer kan vi lägga till eller ta bort tusen separatorer. Om vi ​​vill visa tusen separatorer måste vi välja vbTrue för det sista argumentet.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2,,, vbTrue) MsgBox MyNum End Sub

Detta kommer att kasta resultatet så här.

Om du nu väljer vbFalse får vi inte tusen separatorer.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2,,, vbFalse) MsgBox MyNum End Sub

Resultatet av den här koden så här.

Om jag väljer vbUseDefault får vi resultatet enligt systeminställningen. Nedan följer resultatet av detta.

Så min systeminställning har tusen separatorer som standard.

Exempel # 3 - Bifoga parentes för negativa siffror

Om vi ​​har ett skadligt nummer kan vi visa det negativa antalet inom parentes. Vi måste välja vbTrue under "Använd föräldrar för negativa siffror."

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (-25000, 2,, vbTrue) MsgBox MyNum End Sub

Nu resultatet så här.

Om vi ​​väljer vbFalse får vi ett negativt tal med minustecken.

Koda:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (-25000, 2,, vbFalse) MsgBox MyNum End Sub

Nu resultatet så här.

Intressanta artiklar...