VBA-formatnummer - Hvordan formatere tall med VBA NumberFormat?

Innholdsfortegnelse

Formatfunksjon i VBA brukes til å formatere de gitte verdiene i ønsket format, denne funksjonen har i utgangspunktet to obligatoriske argumenter, den ene er inngangen som er tatt i form av en streng, og det andre argumentet er typen format vi vil bruke for eksempel hvis vi bruker Format (.99, "Prosent") vil dette gi oss resultatet som 99%.

Format nummer i VBA Excel

VBA står langt fremme fra vanlige Excel-funksjoner. VBA har mange av sine innebygde funksjoner, akkurat som hvordan vi har mer enn 500 operasjoner i regnearket. En slik formel i VBA er "Format Number."

Ja, du hørte det riktig. Vi har en funksjon kalt “FormatNumber” i VBA. I denne artikkelen tar vi en fullstendig omvisning av denne funksjonen eksklusivt.

Hvordan formatere tall med VBA NumberFormat?

Som funksjonsnavnet selv sier, vil det formatere det gitte nummeret i henhold til formateringsinstruksjonene gitt av brukeren.

Tallformatering er ikke annet enn å legge til desimaltegn, omslutte negative tall i parentes, vise ledende nuller for desimalverdier, etc. Ved å bruke VBA FormatNumber- funksjonen kan vi bruke formateringsstilen til tallene vi jobber med. Nedenfor er syntaksen til funksjonen

  • Uttrykk: Dette er ingenting annet enn tallet vi trenger å formatere.
  • Antall sifre etter desimal: Hvor mange sifre du vil ha for desimaler, plasserer du til høyre for tallet.
  • Inkluder ledende siffer: ledende siffer er bare sifre før tallet starter. Dette gjelder for verdiene mindre enn 1, men større enn -1.
    • Hvis du vil vise null før desimalverdien, kan du sende argumentet som SANT eller -1, og resultatet blir. “0,55”
    • Hvis du ikke vil vise null før desimalverdien, kan du sende argumentet som FALSE eller 0, og resultatet blir ".55."
    • Som standard vil verdien være -2, dvs. regionale datamaskininnstillinger.
  • Bruk foreldre til negative tall: Hvis du ønsker å vise de negative tallene i parentes, kan du sende argumentet som SANT eller -1, og resultatet blir. “(255)”
    • Hvis du ønsker å vise de negative tallene uten parentes, kan du sende argumentet som FALSE eller 0, og resultatet blir. “-255.”
  • Gruppesifre: Enten du vil legge til tusen skilletegn eller ikke. Hvis ja, er SANT eller -1 argumentet. Hvis ikke, er FALSE eller 0 argumentet. Som standard er verdien -2 dvs. lik regionale datamaskininnstillinger.

Eksempler på Excel VBA FormatNumber-funksjon

Vi vil se de praktiske eksemplene på Excel VBA Format Number-funksjonen. Vi vil utføre hvert argument hver for seg.

For dette formålet, opprett makronavnet og erklær en av variablene som en streng. Vi må rapportere variabelen som en streng fordi resultatet gitt av VBA-funksjonen FormatNumber bare er som streng.

Kode:

Sub Format_Number_Example1 () Dim MyNum As String End Sub

Eksempel nr. 1 - Legg til desimalpoeng foran tallet

Trinn 1 - Anta at vi har jobbet med tallet 25000, og vi må formatere det og legge til desimaltegn til høyre for tallet. Tilordne en verdi til vår variabel.

Kode:

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

Trinn 2 - Først opp er et uttrykk, dvs. tallet vi trenger å formatere, så tallet vårt er 25000.

Kode:

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

Trinn 3 - Neste er hvor mange sifre vi trenger å legge til, dvs. 2 tall.

Kode:

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

Trinn 4 - Vis verdien av variabelen i VBA-meldingsboksen.

Kode:

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

Trinn 5 - Resultatet av denne makroen er slik.

Vi kan se to desimaler til høyre for tallet.

Eksempel 2 - Gruppenummer dvs. tusen skilletegn

For det samme tallet kan vi legge til eller slette tusen skilletegn. Hvis vi vil vise tusen skilletegn, må vi velge vbTrue for det siste argumentet.

Kode:

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

Dette vil kaste resultatet slik.

Nå, hvis du velger vbFalse, så får vi ikke tusen skilletegn.

Kode:

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

Resultatet av denne koden som dette.

Hvis jeg velger vbUseDefault, får vi resultatet i henhold til systeminnstillingen. Nedenfor er resultatet av dette.

Så systeminnstillingen min har tusen skilletegn som standard.

Eksempel 3 - Vedlegg parentes for negative tall

Hvis vi har et skadelig tall, kan vi vise det negative tallet i parentes. Vi må velge vbTrue under "Bruk foreldre til negative tall."

Kode:

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

Nå er resultatet slik.

Hvis vi velger vbFalse, får vi et negativt tall med minustegn.

Kode:

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

Nå er resultatet slik.

Interessante artikler...