Udostępnij za pośrednictwem


Niestandardowe formaty liczbowe funkcji FORMAT

Zdefiniowane przez użytkownika wyrażenie formatu liczb może zawierać od jednej do trzech sekcji rozdzielanych średnikami. Jeśli argument Styl funkcji Format zawiera jeden ze wstępnie zdefiniowanych formatów liczb, dozwolone jest użycie tylko jednej sekcji.

Liczba sekcji

Wynik

Tylko jedna sekcja

Wyrażenie formatu jest stosowane do wszystkich wartości.

Dwie sekcje

Pierwsza sekcja jest stosowana do wartości dodatnich i zer, a druga sekcja jest stosowana do wartości ujemnych.

Trzy sekcje

Pierwsza sekcja jest stosowana do wartości dodatnich, druga sekcja jest stosowana do wartości ujemnych, a trzecia do zer.

Specyfikacje formatów

W poniższej tabeli przedstawiono znaki, których można użyć do tworzenia zdefiniowanych przez użytkownika formatów liczb.

Specyfikacja formatu

Opis

Brak

Wyświetla liczbę bez użycia formatowania.

0 (znak „zero”)

Symbol zastępczy cyfry. Wyświetla cyfrę lub zero. Jeśli wyrażenie zawiera cyfrę na pozycji, na której w ciągu formatu znajduje się zero, wyświetla cyfrę; w przeciwnym razie wyświetla na tej pozycji zero.

Jeśli liczba zawiera mniej cyfr niż wyrażenie formatu zer (z dowolnej strony punktu dziesiętnego), wyświetla zera wiodące lub końcowe. Jeśli liczba zawiera więcej cyfr z prawej strony separatora dziesiętnego niż wyrażenie formatu zer z prawej strony separatora dziesiętnego, zaokrągla liczbę, tak aby liczba miejsc dziesiętnych była równa liczbie zer. Jeśli liczba zawiera więcej cyfr z lewej strony separatora dziesiętnego niż wyrażenie formatu zer z lewej strony separatora dziesiętnego, wyświetla dodatkowe cyfry bez modyfikacji.

#

Symbol zastępczy cyfry. Wyświetla cyfrę lub nic. Jeśli wyrażenie zawiera cyfrę na pozycji, na której w ciągu formatu znajduje się znak #, wyświetla cyfrę; w przeciwnym razie nic nie wyświetla na tej pozycji.

Ten symbol działa podobnie do symbolu zastępczego cyfry 0, z tym że nie są wyświetlane zera wiodące lub końcowe, gdy liczba zawiera mniej cyfr niż wyrażenie formatu znaków # z dowolnej strony separatora dziesiętnego.

. (znak kropki)

Symbol zastępczy miejsca dziesiętnego. Symbol zastępczy miejsca dziesiętnego określa, ile cyfr będzie wyświetlanych z lewej i prawej strony separatora dziesiętnego. Jeśli wyrażenie formatu zawiera znaki # tylko z lewej strony tego symbolu, liczby mniejsze od 1 będą zaczynać się od separatora dziesiętnego. Aby w liczbach ułamkowych było wyświetlane zero wiodące, należy użyć zera jako pierwszego symbolu zastępczego cyfry z lewej strony separatora dziesiętnego. W niektórych ustawieniach regionalnych jako separator dziesiętny jest używany przecinek. Rzeczywisty znak używany jako symbol zastępczy miejsca dziesiętnego w sformatowanych wynikach zależy od formatu liczb rozpoznawanego przez system. Dlatego w swoich formatach należy używać kropki jako symbolu zastępczego miejsca dziesiętnego, nawet jeśli w stosowanych ustawieniach regionalnych jako symbol zastępczy miejsca dziesiętnego jest używany przecinek. Sformatowany ciąg będzie miał format zgodny z ustawieniami regionalnymi.

%

Symbol zastępczy procentu. Mnoży wyrażenie przez liczbę 100. Znak procentu (%) jest wstawiany na pozycji, na której występuje w ciągu formatu.

, (znak przecinka)

Separator tysięcy. Separator tysięcy oddziela tysiące od setek w liczbie, w której z lewej strony separatora dziesiętnego znajdują się co najmniej cztery cyfry. Standardowe użycie separatora tysięcy jest określone, jeśli format zawiera separator tysięcy otoczony symbolami zastępczymi cyfr (0 lub #).

Separator tysięcy znajdujący się bezpośrednio z lewej strony separatora dziesiętnego (niezależnie od tego, czy są określone miejsca dziesiętne) lub najdalej z prawej strony ciągu oznacza „skaluj liczbę, dzieląc ją przez 1000, i zaokrąglaj w razie potrzeby”. Liczby mniejsze od 1000 ale większe od 500 są wyświetlane jako 1, a liczby mniejsze od 500 są wyświetlane jako 0. Dwa sąsiadujące separatory tysięcy na tej pozycji powodują skalowanie wg współczynnika równego 1 milion, a każdy dodatkowy separator powoduje dołączenie współczynnika równego 1000.

Wiele separatorów na pozycji innej niż bezpośrednio po lewej stronie separatora dziesiętnego lub najdalej z prawej strony ciągu są traktowane po prostu jak separatory tysięcy. W niektórych ustawieniach regionalnych separatorem tysięcy jest kropka. Rzeczywisty znak używany jako separator tysięcy w sformatowanych wynikach zależy od formatu liczb rozpoznawanego przez system. Dlatego w swoich formatach należy używać przecinka jako separatora tysięcy, nawet jeśli w stosowanych ustawieniach regionalnych jako separator tysięcy jest używana kropka. Sformatowany ciąg będzie miał format zgodny z ustawieniami regionalnymi.

Na przykład można rozważyć trzy następujące ciągi formatów:

„#,0.”, w którym separator tysięcy jest używany w celu formatowania liczby 100 milionów jako ciągu „100 000 000”.

„#0,.”, w którym skalowanie przez współczynnik równy tysiąc jest używane w celu formatowania liczby 100 milionów jako ciągu „100000”.

„#,0,.”, w którym separator tysięcy i skalowanie przez współczynnik równy tysiąc jest używane w celu formatowania liczby 100 milionów jako ciągu „100 000”.

: (znak dwukropka)

Separator godziny. W niektórych ustawieniach regionalnych jako separator godziny może być używany inny znak. Separator godziny rozdziela godziny, minuty i sekundy w sformatowanych wartościach godziny. Rzeczywisty znak używany jako separator godziny w sformatowanych wynikach jest ustalany na podstawie ustawień systemu.

/ (znak ukośnika)

Separator daty. W niektórych ustawieniach regionalnych jako separator daty może być używany inny znak. Separator daty rozdziela dzień, miesiąc i rok w sformatowanych wartościach daty. Rzeczywisty znak używany jako separator daty w sformatowanych wynikach jest ustalany na podstawie ustawień systemu.

E-, E+, e-, e+

Format wykładniczy. Jeśli wyrażenie formatu zawiera co najmniej jeden symbol zastępczy cyfry (0 lub #) z lewej strony symbolu E-, E+, e- lub e+, liczba jest wyświetlana w formacie wykładniczym, a symbol E lub e jest wstawiany między liczbę a jej wykładnik. Liczba symboli zastępczych cyfr z lewej strony określa liczbę cyfr w wykładniku. Użycie symbolu E- lub e- umożliwia wstawienie znaku minus w wykładniku ujemnym. Użycie symbolu E+ lub e+ umożliwia wstawienie znaku minus obok wykładnika ujemnego i znaku plus obok wykładnika dodatniego. Aby uzyskać prawidłowe formatowanie, należy także wstawić symbole zastępcze cyfr z prawej strony tego symbolu.

- + $ ( )

Znaki literału. Te znaki są wyświetlane dokładnie tak, jak wpisano je w ciągu formatu. Aby wyświetlić znak inny niż jeden z wymienionych, należy poprzedzić go ukośnikiem odwrotnym (\) lub ująć w cudzysłów (" ").

\ (znak ukośnika odwrotnego)

Wyświetla następny znak w ciągu formatu. Aby znak mający specjalne znaczenie wyświetlić jako znak literału, należy poprzedzić go ukośnikiem odwrotnym (\). Ukośnik odwrotny nie jest wyświetlany. Użycie ukośnika odwrotnego ma taki sam efekt jak ujęcie następnego znaku w cudzysłów. Aby wyświetlić ukośnik odwrotny, należy użyć dwóch ukośników odwrotnych (\\).

Przykładami znaków, których nie można wyświetlić jako znaków literału, są znaki służące do formatowania daty i godziny (a, c, d, h, m, n, p, q, s, t, w, y, / oraz :), znaki służące do formatowania liczb (#, 0, %, E, e, przecinek oraz kropka) oraz znaki służące do formatowania ciągów (@, &, <, > oraz !).

"ABC"

Wyświetla ciąg ujęty w cudzysłów (" "). Aby w argumencie Styl umieścić ciąg z poziomu kodu, należy otoczyć tekst instrukcjami Chr(34) (34 to kod znaku cudzysłowu ["]).

W poniższej tabeli znajduje się kilka przykładowych wyrażeń formatów liczb. (W tych przykładach przyjęto założenie, że w systemie są używane ustawienia regionalne Polski-PL). Pierwsza kolumna zawiera ciągi formatów dla funkcji Format; w innych kolumnach przedstawiono dane wynikowe, jeśli sformatowane dane mają wartość podaną w nagłówkach kolumn).

Format (Styl)

Liczba „5” sformatowana jako

Liczba „-5” sformatowana jako

Liczba „0,5” sformatowana jako

Liczba „0” sformatowana jako

Ciąg o zerowej długości ("")

5

-5

0.5

0

0

5

-5

1

0

0.00

5.00

-5.00

0.50

0.00

#,##0

5

-5

1

0

$#,##0;($#,##0)

$5

($5)

$1

$0

$#,##0.00;($#,##0.00)

$5.00

($5.00)

$0.50

$0.00

0%

500%

-500%

50%

0%

0.00%

500.00%

-500.00%

50.00%

0.00%

0,00E+00

5,00E+00

-5,00E+00

5,00E-01

0,00E+00

0,00E-00

5,00E00

-5,00E00

5,00E-01

0,00E00

"#,##0 zł;;\Z\e\r\o"

$5

$-5

$1

Zero

Uwagi

Wstawienie średników, między którymi nie ma żadnych znaków, spowoduje wyświetlenie brakującej sekcji przy użyciu formatu wartości dodatniej.

Zobacz także

Odwołanie

Funkcja FORMAT

Wstępnie zdefiniowane formaty liczbowe funkcji FORMAT

Niestandardowe formaty daty i godziny dla funkcji FORMAT