Funkcja Format

Konwertuje wyrażenie numeryczne na ciąg, a następnie formuje go zgodnie z określonym formatem.

Składnia:


Format(expression [, format As String]) As String

Parametry:

expression: Wyrażenie numeryczne, które chcesz przekonwertować na sformatowany ciąg.

format: Ciąg, który określa kod formatu dla liczby. Jeśli pominięto format, funkcja formatu działa jak funkcja Str() LibreOffice Basic.

Zwracana wartość:

Ciąg tekstowy.

Kody formatowania

Poniższa lista opisuje kody, których można użyć do formatowania wyrażenia numerycznego:

0: Jeśli expression ma cyfrę w pozycji 0 w kodzie format, cyfra jest wyświetlana, w przeciwnym razie wyświetlane jest zero.

Jeśli expression ma mniej cyfr niż liczba zer w kodzie format (po obu stronach dziesiętnych), wyświetlane są zera wiodące lub spuszczające. Jeśli expression ma więcej cyfr po lewej stronie separatora dziesiętnego niż liczbę zer w kodzie format, dodatkowe cyfry są wyświetlane bez formatowania.

Miejsca dziesiętne w expression są zaokrąglone zgodnie z liczbą zer, które pojawiają się po dziesiętnym separatorze w kodzie format.

#: Jeśli expression zawiera cyfrę w pozycji symbolu zastępczego # w kodzie format, cyfra jest wyświetlana, w przeciwnym razie nic nie jest wyświetlane w tej pozycji.

Ten symbol działa jak 0, z wyjątkiem tego, że zera wiodące lub spuszczające nie są wyświetlane, jeśli w kodzie format jest więcej # znaków niż cyfr w expression. Wyświetlane są tylko odpowiednie cyfry expression.

.: Symbol zastępczy przecinka dziesiętnego określa liczbę miejsc przed i po przecinku.

Jeśli kod format zawiera tylko symbole zastępcze # po lewej stronie tego symbolu, liczby mniejsze niż 1 zaczynają się od separatora dziesiętnego. Aby zawsze wyświetlać wiodące zero z liczbami ułamkowymi, użyj 0 jako symbol zastępczy dla pierwszej cyfry po lewej stronie separatora dziesiętnego.

%: Mnoży expression przez 100 i wstawia znak procentowy (%), w którym expression pojawia się w kodzie format.

E- E+ e- e+ : Jeśli kod format zawiera co najmniej jeden cyfrowy symbol zastępczy (0 lub #) po prawej stronie symbolu E-, E+, e- lub e+, expression sformatowane jest w formacie naukowym lub wykładniczym. Litera E lub e jest wstawiana między liczbą a wykładnikiem. Liczba symboli zastępczych cyfr po prawej stronie symbolu określa liczbę cyfr w wykładniku.

W przypadku zastosowania symboli E-, E+, e-, e+, jeśli wykładnik jest ujemny, bezpośrednio przez wykładnikiem jest wyświetlany znak minus. Jeśli wykładnik jest dodatni, znak plus jest wyświetlany przez wykładnikiem tylko w przypadku zastosowania symboli E+ lub e+.

Tysiące ograniczników jest wyświetlane, jeśli kod format zawiera ograniczenie zamknięte przez cyfry zastępcze (0 lub #).

Użycie kropki jako separatora tysięcy i przecinka dziesiętnego zależy od ustawień regionalnych. W przypadku wprowadzania liczb bezpośrednio w kodzie źródłowym Basic jako separatora dziesiętnego należy zawsze używać kropki. Rzeczywisty znak wyświetlany jako separator dziesiętny zależy od formatu liczb w ustawieniach systemowych.

- + $ ( ) spacja: Plus (+), minus (-), dolar ($), spacja lub nawiasy wprowadzone w kodzie format będą wyświetlane jako znaki.

Aby wyświetlić znaki inne niż wymienione powyżej, należy poprzedzić je odwróconą kreską ukośną (\) lub umieścić w cudzysłowie (" ").

\ : ukośnik wsteczny wyświetla następny znak w kodzie format.

Znaki w kodzie format, które mają szczególne znaczenie, mogą być wyświetlane jako literalne znaki, jeśli są poprzedzone ukośnikiem wstecznym. Sam ukośnik wsteczny nie jest wyświetlany, chyba że wprowadzisz podwójny ukośnik wsteczny (\\) w kodzie formatu.

Znaki wymagające poprzedzenia ich odwróconą kreską ukośną w kodzie formatu to: literały znaków formatowania daty i godziny (a, c, d, h, m, n, p, q, s, t, w, y, /, :), znaki formatowania liczb (#, 0, %, E, e, przecinek, kropka) oraz znaki formatowania ciągów (@, &, <, >, !).

Możesz także użyć następujących predefiniowanych formatów liczb. Z wyjątkiem "General Number", wszystkie predefiniowane kody formatu zwracają liczbę jako liczbę dziesiętną z dwoma miejscami dziesiętnymi.

W przypadku korzystania ze wstępnie zdefiniowanych formatów nazwa formatu musi zostać ujęta w cudzysłów.

Wstępnie zdefiniowany format

General Number: Liczby są wyświetlane tak, jak zostały wprowadzone.

Waluta: Wstawia znak dolara przed liczbą i umieszcza liczby ujemne w nawiasach.

Fixed: Wyświetla co najmniej jedną cyfrę przed separatorem dziesiętnym.

Standardowy: Wyświetla liczby z separatorem tysięcy.

Percent: Mnoży liczbę razy 100 i dołącza do niej znak procenta.

Naukowy: Wyświetla liczby w formacie naukowym (na przykład liczba 1000 jest wyświetlana w postaci 1,00E+03).

Kod format można podzielić na trzy sekcje oddzielone średnikami. Pierwsza część określa format wartości dodatnich, druga część wartości ujemnych i trzecia część zera. Jeśli określisz tylko jeden kod format, dotyczy to wszystkich liczb.

Ustawienia regionalne dotyczące formatowania liczb, dat i walut w programie LibreOffice Basic można zmienić w następującej ścieżce: - Języki i ustawienia regionalne - Ogólne. W kodach formatowania Basic kropka dziesiętna (.) jest zawsze używana jako symbol zastępczy separatora dziesiętnego zdefiniowanego w ustawieniach regionalnych i będzie zastępowana przez odpowiadający jej znak.

To samo dotyczy regionalnych ustawień formatu daty, godziny i waluty. Kod formatowania Basic jest interpretowany i wyświetlany zgodnie z ustawieniami regionalnymi.

Kody błędów:

5 Nieprawidłowe wywołanie procedury

Przykład:


Sub ExampleFormat
    MsgBox Format(6328.2, "##,##0.00")
    ' w przypadku wprowadzania liczb w kodzie źródłowym Basic, jako separatora dziesiętnego należy zawsze używać kropki.
    ' w przypadku angielskich ustawień regionalnych niniejszy przykład powoduje wyświetlenie liczby 6,328.20, natomiast w przypadku niemieckich ustawień regionalnych 6.328,20.
End Sub

Prosimy o wsparcie!