Format Function

Format muuntaa luvun merkkijonoksi ja sitten muotoilee sen määrätyn muotoilun mukaisesti.

Syntaksi:

Format (luku1 [, muotoilu1 As String])

Palautusarvo:

merkkijono (String)

Parametrit:

Luku1: numeerinen lauseke, joka halutaan muuntaa muotoilluksi merkkijonoksi.

Muotoilu1: merkkijono, joka määrittää luvun muotoilukoodin. Jos muotoilu1 on jätetty pois, Format-funktion toiminta vastaa Str-funktiota.

Muotoilukoodit

Seuraavassa luettelossa kuvaillaan ne koodit, joita voidaan käyttää luvun muotoiluun:

0: Jos luku1:ssä on numero samassa asemassa kuin muotoilukoodissa 0, niin numero esitetään, muutoin esitetään nolla.

Jos luku1:ssä vähemmän numeroita kuin nollia muotoilukoodissa, (kummalla tahansa puolella desimaalierotinta), etu- tai desimaalinollia esitetään. Jos luvussa on enemmän numeroita ennen desimaalierotinta kuin muotoilukoodissa on nollia, ylimenevät numerot esitetään muotoilemattomina.

Luvun desimaaliosa pyöristetään muotoilu1-koodin desimaalierottimen jälkeisten nollien mukaisesti.

#: Jos luku1:ssä on numero samassa asemassa kuin muotoilu1-koodissa paikkamerkki #, niin numero esitetään, muutoin asemassa ei esitetä mitään.

Tämä symboli toimii samoin kuin 0, paitsi ettei etu- tai loppunollia esitetä, jos #-merkkejä on enemmän kuin numeroita luvussa. Vain luvun merkitsevät numerot esitetään.

.: Desimaalipaikkamerkki määrittää numeroiden määrän vasemmalle ja oikealle desimaalierottimesta.

Jos muotoilukoodissa on vain #-paikkamerkkejä vasemmalle tästä symbolista, luvut, jotka ovat pienempiä kuin 1, alkavat desimaalierottimella. Kun halutaan esittää aina etunolla kokonaisosattomilla desimaaliluvuilla, käytetään 0-paikkamerkkiä ykkösten paikalla.

%: luku kerrotaan 100 ja prosenttimerkki (%) lisätään siihen asemaan, missä se on muotoilukoodissa.

E- E+ e- e+ : Jos muotoilukoodissa on vähintään yksi numeron paikkamerkki (0 tai #) oikealle symbolista E-, E+, e-, tai e+, luku muotoillaan tieteelliseen eli eksponenttilukumuotoon. Merkki E tai e lisätään lukuosan ja eksponenttiosan väliin. Paikkamerkkien lukumäärä oikealle symbolista määrittää eksponentin numeroiden määrän.

Eksponentin ollessa negatiivinen, miinusmerkki esitetään välittömästi eksponentin edessä kaikilla koodeilla E-, E+, e- ja e+. Positiivisen eksponentin plusmerkki esitetään vain koodeilla E+ ja e+.

Tuhaterotin esitetään, jos muotoilukoodissa se on rajattu numeroiden paikkamerkein (0 tai #).

Pisteen käyttö tuhat- tai desimaalierottimena on riippuvainen maa-asetuksista. Kun numeroita kirjoitetaan suoraan Basicin lähdekoodiin, desimaalierottimena käytetään aina pistettä. Todellinen desimaalierottimena näytettävä merkki riippuu käyttöjärjestelmän lukumuotoasetuksista.

- + $ ( ) välilyönti: Plus(+)-, miinus(-)-, dollarin($), välilyönti-, tai sulkumerkit kirjoitettuna suoraan muotoilukoodiin esitetään sellaisinaan.

Muiden kuin tässä esitettyjen merkkien esittämiseksi pitää käyttää joko edeltävää kenoviivaa (\), tai sulkea merkki lainausmerkkeihin (" ").

\ : Kenoviiva esittää sitä seuraavan merkin muotoilukoodissa.

Muotoilukoodille erityismerkitykselliset merkit voidaan esittää sellaisinaan vain kun niitä edeltää kenoviiva. Kenoviivaa itseään ei esitetä, ellei käytetä kaksoiskenoviivaa (\\) muotoilukoodissa.

Ne merkit, joita pitää edeltää kenoviiva, että ne esitettäisiin sellaisinaan kirjaimellisesti, ovat päivämäärien ja kellonaikojen muotoilumerkit (a, c, d, h, m, n, p, q, s, t, w, y, /, :), lukumuotoilumerkit (#, 0, %, E, e, pilkku, piste)ja merkkijonojen muotoilumerkit (@, &, <, >, !).

Käytettävissä on myös seuraavat avainsanoin esimääritellyt lukumuotoilut. Lukuun ottamatta "General Number"-määritystä, kaikki esimääritellyt muotoilukoodit palauttavat desimaaliluvut kahdella desimaalilla.

Kun esimääriteltyjä lukumuotoja käytetään, muotoilun avainsana pitää sulkea lainausmerkkeihin.

Esimääritelty muotoilu

General Number: luvut esitetään niin kuin ne on syötettykin.

Currency: maakohtainen valuuttamerkki esitetään asiaan kuuluvalla paikallaan ja negatiiviset luvut esitetään sulkeissa.

Fixed: desimaalierottimen edessä esitetään aina vähintään yksi numero.

Standard: luvut esitetään tuhaterottimin.

Percent: luku kerrotaan 100:lla ja prosenttimerkki lisätään luvun loppuun.

Scientific: luvut esitetään tieteellisellä esitystavalla (esimerkiksi 1000 muodossa 1,00E+03).

Muotoilukoodi on jaettavissa kolmeen osaan, jotka erotellaan toisistaan puolipistein. Ensimmäinen osa muotoilee positiiviset luvut, toinen osa on negatiivisille luvuille ja kolmas nollalle. Jos määritellään vain yksi muotoilukoodi, sitä käytetään kaikkiin lukuihin.

LibreOffice Basicin voi säätää käyttämään paikallisia muotoiluja luvuille, päivämäärille ja valuutoille - Kieliasetukset - Kielet -lehdeltä. Basicin muotoilukoodeissa desimaalipistettä (.) käytetään aina desimaalimerkin paikkamerkkinä, jonka paikalliset asetukset voivat korvata esimerkiksi pilkulla.

Sama koskee päivämäärän, ajan ja valuutan muotoiluja. Basicin muotoilukoodi tulkitaan ja esitetään paikallisten asetusten mukaisesti.

Error codes:

5 Virheellinen proseduurikutsu

Esimerkki:

Sub ExampleFormat

    MsgBox Format(6328.2, "##,##0.00")

    ' Basic-lähdekoodissa käytetään aina pistettä desimaalierottimena.

    ' esitetään esimerkiksi muodossa 6,328.20 englannin kielialueella ja muodossa 6.328,20 saksan kielialueella.

End Sub