Broj formata VBA - Kako formatirati brojeve pomoću VBA NumberFormat?

Funkcija formatiranja u VBA koristi se za formatiranje zadanih vrijednosti u željeni format, ova funkcija u osnovi ima dva obavezna argumenta, jedan je ulaz koji se uzima u obliku niza, a drugi argument je vrsta formata koji želimo koristiti na primjer, ako koristimo Format (.99, "Postotak"), to će nam dati rezultat kao 99%.

Format broja u VBA Excelu

VBA je daleko ispred uobičajenih excel funkcija. VBA ima mnogo svojih ugrađenih funkcija, baš kao što imamo više od 500 operacija na radnom listu. Jedna od takvih formula u VBA-u je "Format Number".

Da, dobro ste čuli. U VBA imamo funkciju koja se naziva „FormatNumber“ . U ovom ćemo članku ekskluzivno obilaziti ovu funkciju.

Kako formatirati brojeve pomoću VBA NumberFormat?

Kao što samo ime funkcije kaže, formatirat će zadani broj prema uputama za formatiranje koje je dao korisnik.

Oblikovanje brojeva nije ništa drugo nego dodavanje decimalnih zareza , zatvaranje negativnih brojeva u zagrade, pokazivanje vodećih nula za decimalne vrijednosti itd. Pomoću funkcije VBA FormatNumber možemo primijeniti stil oblikovanja na brojeve s kojima radimo. Ispod je sintaksa funkcije

  • Izraz: Ovo nije ništa drugo do broj koji moramo oblikovati.
  • Broj znamenki nakon decimalnih: Koliko znamenki želite za decimalni položaj na desnoj strani broja.
  • Uključi vodeću znamenku : vodeća znamenka nije ništa drugo nego znamenke prije početka broja. To vrijedi za vrijednosti manje od 1, ali veće od -1.
    • Ako želite prikazati nulu prije decimalne vrijednosti, argument možete proslijediti kao TRUE ili -1 i rezultat će biti. "0,55"
    • Ako ne želite prikazati nulu prije decimalne vrijednosti, argument možete proslijediti kao FALSE ili 0, a rezultat će biti ".55."
    • Prema zadanim postavkama vrijednost će biti -2, tj. Regionalne postavke računala.
  • Koristite roditelje za negativne brojeve: ako želite prikazati negativne brojeve u zagradama, argument možete proslijediti kao TRUE ili -1, a rezultat će biti. "(255)"
    • Ako negativne brojeve želite prikazati bez zagrade, argument možete proslijediti kao FALSE ili 0 i rezultat će biti. "-255."
  • Grupne znamenke: želite li dodati tisuću separatora ili ne. Ako je odgovor da, argument je ISTINA ili -1. Ako nije, argument je FALSE ili 0. Prema zadanim postavkama vrijednost je -2, tj. Jednaka je regionalnim postavkama računala.

Primjeri funkcije Excel VBA FormatNumber

Vidjet ćemo praktične primjere funkcije Excel VBA Format Number. Izvest ćemo svaki argument zasebno.

U tu svrhu stvorite ime makronaredbe i proglasite jednu od varijabli nizom. Varijablu moramo prijaviti kao niz jer je rezultat koji daje VBA funkcija FormatNumber samo String.

Kodirati:

Sub Format_Number_Example1 () Zatamni MyNum kao niz na kraju Sub

Primjer # 1 - Dodajte decimalne bodove ispred broja

Korak # 1 - Pretpostavimo da smo radili s brojem 25000, a trebamo ga oblikovati i dodati decimalne točke desno od broja. Dodijelite vrijednost našoj varijabli.

Kodirati:

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

Korak # 2 - Prvo je izraz, tj. Broj koji moramo formatirati, pa je naš broj 25000.

Kodirati:

Sub Format_Number_Example1 () Zatamni MyNum kao niz MyNum = FormatNumber (25000, Kraj Sub

Korak # 3 - Slijedi koliko znamenki trebamo dodati, tj. 2 broja.

Kodirati:

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

Korak # 4 - Prikažite vrijednost varijable u okviru VBA poruke.

Kodirati:

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

Korak # 5 - Rezultat ove makronaredbe je ovakav.

S desne strane broja možemo vidjeti dvije decimale.

Primjer # 2 - Broj grupe, tj. Razdjelnik tisuća

Za isti broj možemo dodati ili izbrisati tisuću separatora. Ako želimo prikazati tisuću separatora, trebamo odabrati vbTrue za zadnji argument.

Kodirati:

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

Ovo će baciti ovakav rezultat.

Ako odaberemo vbFalse, nećemo dobiti tisuću separatora.

Kodirati:

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

Rezultat ovog koda poput ovog.

Ako odaberem vbUseDefault, dobit ćemo rezultat prema postavci sustava. Ispod je rezultat ovoga.

Dakle, moja postavka sustava prema zadanim postavkama ima tisuću separatora.

Primjer # 3 - priložite zagrade za negativne brojeve

Ako imamo štetan broj, negativni broj možemo prikazati u zagradama. Moramo odabrati vbTrue pod "Koristi roditelje za negativne brojeve."

Kodirati:

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

Sad je ovakav rezultat.

Ako odaberemo vbFalse, dobit ćemo negativan broj sa predznakom minus.

Kodirati:

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

Sad je ovakav rezultat.

Zanimljivi članci...