VBA-formaatnummer

De opmaakfunctie in VBA wordt gebruikt om de gegeven waarden in het gewenste formaat op te maken, deze functie heeft in feite twee verplichte argumenten, een is de invoer die wordt genomen in de vorm van een string en het tweede argument is het type formaat dat we willen gebruiken als we bijvoorbeeld formaat (.99, "Procent") gebruiken, geeft dit ons het resultaat als 99%.

Formaatnummer in VBA Excel

VBA loopt ver voor op reguliere Excel-functies. VBA heeft veel van zijn eigen ingebouwde functies, net zoals we meer dan 500 functies in het werkblad hebben. Een van die formules in VBA is "Formaatnummer".

Ja, je hebt het goed gehoord, we hebben een functie genaamd "FormatNumber" in VBA. In dit artikel nemen we exclusief een complete rondleiding door deze functie.

Hoe nummers opmaken met VBA NumberFormat?

Zoals de functienaam zelf zegt, zal het het opgegeven nummer opmaken volgens de opmaakinstructies die door de gebruiker zijn gegeven.

Getalopmaak is niets anders dan het toevoegen van decimale punten, het plaatsen van negatieve getallen tussen haakjes, het tonen van voorloopnullen voor decimale waarden, enz. Met behulp van de VBA-  functie FormatNumber kunnen we een opmaakstijl toepassen op de getallen waarmee we werken. Hieronder staat de syntaxis van de functie

  • Expressie: dit is niets anders dan het nummer dat we moeten opmaken.
  • Aantal cijfers na decimaal: hoeveel cijfers u wilt voor decimalen, plaatst u voor de rechterkant van het nummer.
  • Inclusief voorloopcijfer: voorloopcijfer is niets anders dan cijfers voordat het nummer begint. Dit geldt voor de waarden kleiner dan 1 maar groter dan -1.
    • Als u nul wilt weergeven vóór de decimale waarde, kunt u het argument doorgeven als WAAR of -1 en het resultaat zal zijn. "0,55"
    • Als u geen nul wilt weergeven vóór de decimale waarde, kunt u het argument doorgeven als FALSE of 0 en het resultaat is ".55"
    • De standaardwaarde is -2, dwz regionale computerinstellingen.
  • Gebruik ouders voor negatieve getallen: Als u de negatieve getallen tussen haakjes wilt weergeven, kunt u het argument doorgeven als WAAR of -1 en het resultaat zal zijn. "(255)"
    • Als u de negatieve getallen zonder haakjes wilt weergeven, kunt u het argument doorgeven als FALSE of 0 en het resultaat is. "-255"
  • Groepscijfers: Of u nu een scheidingsteken voor duizendtallen wilt toevoegen of niet. Zo ja WAAR of -1 is het argument, zo niet FALSE of 0 is het argument. Standaard is de waarde -2, dwz gelijk aan de regionale computerinstellingen.

Voorbeelden van Excel VBA FormatNumber-functie

We zullen de praktische voorbeelden van de Excel VBA-formaatnummerfunctie zien. We zullen elk argument afzonderlijk uitvoeren.

Creëer hiervoor de macronaam en declareer een van de variabelen als een string. De reden waarom we de variabele als een string moeten declareren, omdat het resultaat dat wordt gegeven door de VBA-functie FormatNumber alleen als String is.

U kunt dit VBA-formaatnummer-functiesjabloon hier downloaden - VBA-formaatnummer-functiesjabloon

Code:

 Sub Format_Number_Example1 () Dim MyNum As String End Sub 

Voorbeeld # 1 - Voeg decimale punten toe vóór het nummer

Stap # 1 - Stel dat we met het nummer 25000 hebben gewerkt en we het moeten opmaken en decimale punten rechts van het nummer moeten toevoegen. Wijs een waarde toe aan onze variabele.

Code:

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

Stap # 2 - De  eerste is de uitdrukking, dwz wat is het nummer dat we moeten opmaken, dus ons nummer is 25.000.

Code:

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

Stap # 3 - Het  volgende is hoeveel cijfers we nodig hebben om toe te voegen, dwz 2 cijfers.

Code:

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

Stap # 4 -  Toon de waarde van de variabele in het VBA-berichtvenster.

Code:

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

Stap # 5 -  Het resultaat van deze macro is als volgt.

Rechts van het nummer zien we twee decimalen.

Voorbeeld # 2 - Groepsnummer dwz duizendtal scheidingsteken

Voor hetzelfde nummer kunnen we duizend scheidingstekens toevoegen of verwijderen. Als we duizend scheidingstekens willen weergeven, moeten we vbTrue selecteren voor het laatste argument.

Code:

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

Dit zal het resultaat zo opleveren.

Als u nu vbFalse selecteert, krijgen we geen duizend scheidingstekens.

Code:

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

Het resultaat van deze code is zo.

Als ik vbUseDefault selecteer, krijgen we het resultaat volgens de systeeminstelling. Hieronder is het resultaat hiervan.

Dus mijn systeeminstelling heeft standaard duizend scheidingstekens.

Voorbeeld # 3 - Plaats haakjes voor negatieve getallen

Als we het getal hebben dat negatief is, kunnen we het negatieve getal tussen haakjes weergeven. We moeten vbTrue selecteren onder “Gebruik ouders voor negatieve getallen”.

Code:

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

Nu het resultaat als dit.

Als we vbFalse selecteren, krijgen we een negatief getal met een minteken.

Code:

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

Nu het resultaat als dit.