Format Function

Prevedie číslo na reťazec a potom ho upraví podľa zadaného formátu.

Syntax:

Format (Číslo [, Format As String])

Návratová hodnota:

Reťazec

Paremetre:

Číslo: Číselný výraz, ktorý chcete previesť na formátovaný reťazec.

Formát: Reťazec, ktorý určuje formátovanie čísla. Ak je Formát vynechaný, funguje funkcia Format rovnako ako funkcia Str.

Formátovacie kódy

Nasledujúci zoznam popisuje kódy, ktoré môžete použiť na formátovanie čísla:

0: Ak má Číslo na pozícii, kde je vo formátovacom kóde 0 číslicu, zobrazí sa číslica, inak sa zobrazí nula.

Ak má Číslo menej číslic ako počet núl vo formátovacom kóde (pred či za desatinnou čiarkou), zobrazia sa nuly naviac na začiatku alebo na konci. Ak má číslo pred desatinnou čiarkou viac číslic ako počet núl vo formátovacom kóde, číslice naviac sa zobrazia bez formátovania.

Desatinná časť čísla sa zaokrúhli podľa počtu núl, ktoré sú vo formátovacom kóde za desatinným oddeľovačom.

#: Ak Číslo obsahuje vo formátovacom kóde na pozícii znaku # číslicu, táto číslica sa zobrazí, inak sa na tejto pozícii nezobrazí nič.

Tento symbol pracuje rovnako ako 0 okrem toho, že sa úvodné a koncové nuly nezobrazia, ak je vo formátovacom kóde viac znakov # než číslic v čísle. Zobrazia sa len relevantné číslice daného čísla.

.: Zástupný znak pre desatinný oddeľovač.

Ak formátovací kód obsahuje zástupné znaky # len naľavo od tohto symbolu, budú čísla menšie ako 1 začínať desatinnou čiarkou. Ak chcete pri zlomkových číslach vždy zobraziť úvodnú nulu, použite 0 ako zástupný znak pre prvú číslicu naľavo od desatinnej čiarky.

%: Vynásobí číslom 100 a vloží znak percent (%), kde sa číslo objaví vo formátovacom kóde

E- E+ e- e+ : Ak formátovací kód obsahuje aspoň jeden zástupný znak pre číslicu (0 nebo #) napravo od symbolu E-, E+, e- alebo e+, číslo je formátované podle vedeckého (exponenciálneho) formátu. Medzi číslo a exponent sa vloží písmeno E alebo e. Počet zástupných znakov vpravo od symbolu určuje počet číslic exponentu.

Ak je exponent záporný, znamienko mínus sa zobrazí bezprostredne pred exponentom s E-, E+, e-, e+. Ak je exponent kladný, zobrazí sa znamienko plus len pred exponentami s E+ alebo e+.

Oddeľovač tisícok sa zobrazí, ak formátovací kód obsahuje oddeľovač obklopený zástupnými znakmi pre číslice (0 nebo #).

Použitie bodky ako oddeľovača tisícok alebo desatinného oddeľovače závisí na miestnom nastavení. Keď zadávate číslo priamo do kódu Basic, vždy používajte bodku ako desatinný oddeľovač. Skutočný desatinný oddeľovač sa zobrazí podľa miestneho nastavenia vášho systému.

- + $ ( ) medzera: Plus (+), mínus (-), dolár ($), medzera alebo zátvorky zadané vo formátovacom kóde sa zobrazia ako znaky.

Ak chcete zobraziť iné znaky ako tu uvedené, musíte najskôr písať spätnú lomku (\) alebo ich uzavrieť do úvodzoviek (" ").

\ : Zobrazí priamo ďalší znak vo formátovacom kóde.

Znaky vo formátovacom kóde, ktoré majú špeciálny význam, možno ako znaky zobraziť len ak pred ne pridáte spätnú lomku. Samotná spätná lomka sa nezobrazí, ak nezapíšete dvojitú spätnú lomku (\\).

Znaky, pred ktoré musíte pridať spätnú lomku, aby sa zobrazili priamo ako znaky, sú formátovacie znaky pre dátum a čas (a, c, d, h, m, n, p, q, s, t, w, y, /, :), formátovacie znaky pre čísla (#, 0, %, E, e, čiarka, bodka) a formátovacie znaky pre reťazce (@, &, <, >, !).

Môžete tiež použiť následujúce prednastavené formáty čísel. Okrem "General Number" sa všetky prednastavené formáty zobrazujú ako čísla zaokrúhlené na dve desatinné miesta.

Ak používate prednastavené formáty, názov formátu musí byť uvedený v úvodzovkách.

Prednastavený formát

General Number: Čísla sa zobrazia tak, ako sú zadané.

Currency: Vloží pred číslo znak dolára a záporné čísla uzavrie do zátvoriek.

Fixed: Pred desatinným oddeľovačom zobrazí aspoň jednu číslicu.

Standard: Zobrazí čísla s oddeľovačom tisícok.

Percent: Vynásobí číslom 100 a pridá k číslu znak percent.

Scientific: Zobrazí čísla vo vedeckom formáte (napr. 1.00E+03 namiesto 1000).

Formátovací kód môžeme rozdeliť na tri časti oddelené bodkočiarkami. Prvá časť definuje formát pre kladné čísla, druhá pre záporné čísla a tretia pre nulu. Ak určíte jen jeden formátovací kód, použije sa pre všetky čísla.

You can set the locale used for controlling the formatting numbers, dates and currencies in LibreOffice Basic in - Language Settings - Languages. In Basic format codes, the decimal point (.) is always used as placeholder for the decimal separator defined in your locale and will be replaced by the corresponding character.

To isté platí pre národné nastavenia formátu dátumu, času a meny. Formátovacie kódy sa interpretujú a zobrazia podľa aktuálneho národného nastavenia.

Error codes:

5 Neplatné volanie procedúry

Príklad:

Sub ExampleFormat

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

    REM keď zadávate čísla v zdrojovom kóde Basic, vždy ako desatinný oddeľovač používajte bodku

    REM zobrazí napríklad 6,328.20 pre anglické nastavenie a 6.328,20 pre nemecké nastavenie

End Sub