Excel VBA -muoto

VBA: n mukana tulee sisäinen toiminto numeroiden muotoiluun. Tämän sisäänrakennetun toiminnon nimi on ”Format Number”. Tämä toiminto muotoilee tietyn numeron käyttäjän edellyttämässä muodossa.
Ennen kuin siirrymme eteenpäin, ymmärrämme ensin, mikä on numeroiden muotoilu. Numeron muotoilu tarkoittaa periaatteessa, että tietty numero on näytettävä tietyllä tavalla. Esimerkiksi, jos haluat nähdä tietyn numeron kahden desimaalin tarkkuudella (150.55) tai haluat nähdä saman numeron ilman desimaalia (150). Nämä ovat vain esimerkkejä. Periaatteessa voimme luokitella nämä numeromuodot neljään luokkaan.

  • Desimaalipisteet
  • Negatiiviset numerot suluissa
  • Johtavat numerot
  • Ryhmän numerot

Aiomme oppia kaikki VBA: n muotoilut esimerkkien avulla. Mutta ensin katsotaanpa VBA-funktion syntaksia Format-numerolle.

Joten kuten yllä olevassa kuvakaappauksessa näet muodonumeron VBA-funktion syntaksin, rikkokaamme tämä funktio ja ymmärrämme jokainen toiminnon osa.

  1. Lauseke: Kuten näet, funktion ensimmäinen osa on lauseke, joka on vain luku, jonka haluamme alustaa.
  2. Numero numero desimaalin jälkeen: Funktion toinen osa kysyy sen numeron numeroita, jonka haluat nähdä desimaalin jälkeen.
  3. Johtava numero : Tämä on hyödyllinen, kun luku on välillä -1 ja 1, mikä tarkoittaa, että luku on enemmän kuin -1 ja pienempi kuin 1. Esimerkiksi 0, 25.

Joten jos haluat nähdä arvon nolla ennen desimaalia, sinun on lisättävä argumentti funktioon TRUE tai -1. Tulos on 0, 55.

Mutta jos lisäät arvoon argumentin FALSE tai 0, tulos on .55.

  1. Käytä vanhempaa negatiivisissa numeroissa : Tätä osaa käytetään negatiivisiin numeroihin. Jos haluat nähdä negatiiviset numerot hakasulkeessa, sinun on annettava argumentti TOSI tai -1 ja tulos on (156). Mutta kun annat argumentin FALSE tai 0, tulos on -156.
  2. Ryhmän numerot : Tämä on viimeinen osa toimintoa, jota käytetään tuhansille erottimille. Joten jos haluat nähdä numerot tuhannella erottimella, antakaa argumentti TOSI tai -1 ja tulos on 52 000. Mutta jos annat saman argumentin kuin FALSE tai 0, tulos on kuin 52000.

Kuinka muotoilla numero VBA-koodilla?

Nyt kun ymmärrät numeroiden muotoilun eri muodot ja numeromuodossa olevan VBA: n sisäänrakennetun toiminnon, voimme edetä ja nähdä, kuinka voimme käyttää tätä esimerkkien avulla.

Voit ladata tämän VBA-muotoisen Excel-mallin täältä - VBA-muodon numero Excel -mallin

Ennen kuin siirryt esimerkkeihin, seuraa alla olevia perusvaiheita, jos olet uusi VBA-makro. Voit lisätä alla olevat koodit VBA-moduuliin.

Vaihe 1: Luo makro-nimi, joka on koodin ensimmäinen rivi, kuten näet kuvakaappauksesta.

Vaihe 2: Ilmoita yksi muuttujista merkkijonona, koska VBA-muoto-numerofunktion antama tulos on merkkijono.

Koodi:

 Alamuoto_numero_esimerkki1 () himmentää MyNum-merkkiä merkkijonon lopuna 

Nyt voimme edetä esimerkkejemme kanssa.

Desimaalipisteet - esimerkki # 1

Oletetaan, että työskentelemme numeron 56456 kanssa ja haluat nähdä kaksi numeroa desimaalin jälkeen.

Vaihe 1: Koodiin voit lisätä VBA: n sisäänrakennetun toiminnon kuten alla.

Mynum = alustusnumero (

Vaihe 2: Kuten tiedät, funktion ensimmäinen vaihe on lauseke, joka ei ole muuta kuin muotoiltava numero. 56456 meidän tapauksessamme.

Mynum = alustusnumero (56456,

Vaihe 3: Seuraava vaihe on Numdigitafterdecimal, joka ei ole muuta kuin numeroiden lukumäärä, jonka haluat nähdä desimaalipilkun jälkeen, mikä on tapauksessamme 2.

Koodi:

 Alamuoto_numero_esimerkki1 () himmentää MyNum-merkintää merkkinä MyNum = muodonumero (56456, 2) MsgBox MyNum loppu alaosa 

Vaihe 4 : Seuraava vaihe on näyttää numero viestiruudussa. VBA: lla on sisäänrakennettu toiminto arvon näyttämiseksi viestiruudussa, joka on MSGBOX.

Joten sinun on vain lisättävä alla oleva koodi, kun olet lisännyt MyNumin muotoilunumeron toiminnon.

Koodi:

 Alamuoto_numero_esimerkki1 () himmentää MyNum-merkintää merkkinä MyNum = muodonumero (56456, 2) MsgBox MyNum loppu alaosa 

Kuten näet koodin viimeisen rivin on End Sub, mikä tarkoittaa VBA-koodia makroon päättyy sen jälkeen.

Vaihe 6: Kun muotoilunumeron koodaus loppuu, voit suorittaa makron ja näet alla olevan tuloksen makron suorittamisen jälkeen.

Tuhannen erotin - esimerkki 2

Oletetaan nyt samalla esimerkillä, että meidän on näytettävä sama numero 56456 tuhansilla erottimilla. Tässä tapauksessa meidän on annettava viimeinen argumentti nimellä “vbTrue”, kuten alla olevassa kuvakaappauksessa esitetään.

Koodi:

Alamuoto_numero_esimerkki2 ()

Dim MyNum kuin jousi

MyNum = FormatNumber (56456, 2,,, vbTrue)

MsgBox MyNum

End Sub

Makron suorittamisen jälkeen näet alla olevan tuloksen.

Jos valitset ”vbFalse” viimeiseksi argumentiksi, numeroa ei näytetä tuhansina erottimina.

Näytä negatiivinen numero hakasulkeessa - esimerkki # 3

Oletetaan, että sama numero 56456 yllä olevassa esimerkissä on negatiivinen ja sinun on näytettävä negatiiviset numerot suluissa, niin funktion neljännen argumentin tulisi olla “vbTrue”, kuten alla olevassa kuvakaappauksessa esitetään.

Koodi:

 Alamuoto_numero_Esimerkki3 () himmentää MyNum-merkintää merkkinä MyNum = muoto-numero (-56456, 2,, vbTrue, vbTrue) MsgBox MyNum End Sub 

Kuten näet, neljäs ja viides argumentti koodissa ovat “vbTrue”, mikä tarkoittaa negatiivisen luvun (neljäs argumentti) ja tuhansien erottimien (viides argumentti) alustamista, molemmat ovat totta. Joten näet negatiivisen luvun hakasulkeessa ja tuhansien erottimien kanssa, kuten alla olevassa kuvakaappauksessa esitetään.

Numeron alustaminen välillä -1 ja 1 - esimerkki # 4

Oletetaan, että luku on 0, 567, joka on välillä -1 ja 1, niin sinulla on kaksi vaihtoehtoa numeron alustamiseen. Ensimmäinen vaihtoehto on näyttää nolla ennen desimaalia tai olla näyttämättä nollaa ennen desimaalia.

Jos valitset vaihtoehdon näyttää nolla ennen desimaalia, sinun pitäisi antaa toimintoon kolmas argumentti nimellä “vbTrue”, kuten alla olevassa kuvakaappauksessa esitetään.

Koodi:

 Alamuoto_numero_esimerkki4 () himmentää MyNum-merkintää merkkinä MyNum = muoto-numero (0, 567, 2, vbTrue, vbTrue, vbTrue) MsgBox MyNum End Sub 

Voit nähdä alla olevan tuloksen suoritettuaan makrokoodin.

Kuten näette, tulos näyttää vain kaksi numeroa desimaalin jälkeen, koska funktion toisena argumenttina on annettu vain 2.

Jos valitset kolmannen argumentin vbFalseksi, kuten alla olevassa kuvakaappauksessa näkyy.

Koodi:

 Alamuoto_numero_esimerkki5 () himmentää MyNum-merkkijonoa MyNum = muoto-numero (0, 567, 2, vbFalse, vbTrue, vbTrue) MsgBox MyNum End Sub 

Silloin et näe nollaa ennen desimaalia, kuten alla olevassa kuvakaappauksessa näytetään.

Muistettavat asiat

  • VBA FormatNumber -toiminnolla on 5 argumenttia, joten varmista, että annat oikeat argumentit funktion järjestyksessä. Meidän on noudatettava funktion järjestystä, ei ole muuta ulospääsyä.
  • Jos pidät jonkin argumenteista tyhjänä, se harkitsee automaattisesti VBA-oletusasetusta.
  • Ole varovainen vbTrue- ja vbFalse-argumenttien suhteen kolmen viimeisen argumentin suhteen numeron muotoilua varten.
  • Ensimmäiselle argumentille, joka on lauseke, voit myös antaa soluviittauksen Excel-taulukossa minkään numeron sijasta.

Suositellut artikkelit

Tämä on opas VBA-muotoon. Tässä keskustellaan siitä, kuinka muotoilla numerot Excelissä käyttämällä VBA-koodia, sekä käytännön esimerkkejä ja ladattavaa Excel-mallia. Voit myös käydä läpi muiden ehdottamiemme artikkeleidemme -

  1. Kuinka käyttää VBA TRIM -toimintoa?
  2. VBA-ryhmät | Täydellinen opetusohjelma
  3. Kuinka käyttää VBA Select Case -sovellusta?
  4. Excel VBA -toiminto

Luokka: