PoprzedniaWyżejGłównaSpis treściIndex hasełZnajdźBokGora
BokGora

Google
 

Funkcja Format

Funkcja Format zwraca wartość typu Variant(String) sformatowną odpowiednio do instrukcji zawartych w wyrażeniu Format.

Składnia funkcji Format:

Format (Wyrażenie[, Format [, PierwszyDzieńTygodnia[, PierwszyTydzieńRoku]]])


Składnia funkcji Format składa się z następujących części:
Wyrażenie wymagane, jakiekolwiek poprawne wyrażenie
Format opcjonalne, nazwa lub zdefiniowane przez użytkownika wyrażenie formatujące
PierwszyDzieńTygodnia opcjonalna wartość lub stała określająca pierwszy dzień tygodnia
PierwszyTydzieńRoku opcjonalna wartość lub stała określająca pierwszy tydzień roku


Wartości i stałe dla argumentu PierwszyDzieńTygodnia:

Stała Wartość Opis
vbUseSystem 0 Użyj ustawień NLS API
vbSunday 1 Niedziela (domyślna)
vbMonday 2 Poniedziałek
vbTuesday 3 Wtorek
vbWednesday 4 Środa
vbThursday 5 Czwartek
vbFriday 6 Piątek
vbSaturday 7 Sobota


Wartości i stałe dla argumentu PierwszyTydzieńRoku:

Stała Wartość Opis
vbUseSystem 0 Użyj ustawień NLS API
vbFirstJan 1 Tydzień zawierający 1 stycznia (domyślnie)
vbFirstFourDays 2 Pierwszy tydzień, w którym są co najmniej 4 dni nowego roku
vbFirstFullWeek 2 Pierwszy pełny tydzień nowego roku.


Formatowane wartości Używany format
Liczby zdefiniowane formaty numeryczne lub stworzone formaty numerycznye zdefiniowane przez użytkownika
Daty i czas zdefniowane formaty data/czas lub stworzone formaty data/czas zdefiniowane przez użytkownika
Wartości liczbowe dat i czasu formaty daty i czasu lub formaty numeryczne
Łańcuchy stworzone formaty łańcuchowe zdefiniowane przez użytkownika

na górę strony...

Przy formatowaniu liczby bez określania argumentu Format, funkcja Format działa podobnie do funkcji Str. Jednak, dodatnie liczby sformatowane jako łańcuch przy użyciu funkcji Format nie zawierają miejsca zarezerwowanego na znak liczby; liczby konwertowane funkcją Str zachowują miejsce na znak.


Różne formaty dla różnych wartości numerycznych

Wyrażenie Format zdefiniowane przez użytkownika dla liczb może mieć od jednej do czterech sekcji oddzielonych od siebie średnikami. Jeżeli argument Format zawiera jeden z formatów numerycznych to tylko jedna sekcja jest dozwolona.
Przy użyciu Otrzymany wynik
Tylko jednej sekcji Wyrażenie Format stosowane do wszystkich wartości
Dwóch sekcji Pierwsza sekcja stosowana jest do dodatnich wartości i zera, druga do ujemnych wartości.
Trzech sekcji Pierwsza sekcja stosowana jest do dodatnich wartości, druga do ujemnych wartości, trzecia do zera.
Czterech sekcji Pierwsza sekcja stosowana jest do dodatnich wartości, druga do ujemnych wartości, trzecia do zera, a czwarta do wartości Null.

na górę strony...

Poniższy przykład ma dwie sekcje, pierwsza definiuje format dla dodatnich wartości i zera, druga definiuje format dla ujemnych wartości:

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

Przy użyciu średników, bez żadnych znaków między nimi, opuszczona sekcja jest wyświetlana z użyciem formatu dla dodatnich wartości. Na przykład, poniższy format wyświetla dodatnie i ujemne wartości używając formatu pierwszej sekcji i wyświetla "Zero" jeżeli wartość jest zero:

"$#,###;;\Z\e\r\o"

na górę strony...

Różne formaty dla różnych łańcuchowych wartości

Wyrażenie Format dla łańcuchów może mieć jedną lub dwie sekcje oddzielone przez średniki.

Przy użyciu Otrzymany wynik
Tylko jednej sekcji Wyrażenie Format stosowane do wszystkich danych string.
Dwóch sekcji Pierwsza sekcja stosowana jest do danych łańcuchowych, druga do wartości Null i do pustych łańcuchów ("").

na górę strony...

Zdefiniowane formaty Data/Czas

Poniższa tabela opisuje zdefiniowane nazwy formatów daty i czasu:

Nazwa formatu Opis
General Date Wyświetla datę i/lub czas. Dla liczb rzeczywistych, wyświetla datę i czas, np. 4/3/93 05:34 PM. Jeżeli nie ma części ułamkowej, wyświetla tylko datę, np. 4/3/93. Jeżeli nie ma części całkowitej, wyświetla tylko czas, np. 05:34 PM. Wyświetlanie daty jest określone przez ustawienia systemowe.
Long Date Wyświetla datę według formatu długiej daty ustawionego w systemie
Medium Date Wyświetla datę używając formatu średniej daty odpowiedniego do wersji języka aplikacji typu host.
Short Date Wyświetla datę według formatu krótkiej daty systemowej
Long Time Wyświetla czas używając formatu długiego czasu systemu, zawierającego godziny, minuty, sekundy
Medium Time Wyświetla czas w 12 godzinnym formacie, używając godzin i minut oraz określnika AM/PM
Short Time Wyświetla czas używając 24-godzinnego formatu, na przykład 17:45.

na górę strony...

Formaty Data/Czas zdefiniowane przez użytkownika

Poniższa tabela opisuje znaki jakie można używać do tworzenia formatów data/czas zdefiniowanych przez użytkownika:

Znak Opis
(:) Separator czasu. W pewnych lokalnych ustawieniach, inne znaki mogą być użyte jako separatory czasu. Separator czasu oddziela godziny, minuty i sekundy, gdy wartości czasu są formatowane. Aktualny znak użyty jako separator czasu w sformatowanym wyjściu jest określony przez ustawienia systemowe.
(/) Separtor daty. W pewnych lokalnych ustawieniach, inne znaki mogą być użyte jako separatory daty. Separator daty oddziela dzień, miesiąc i rok, gdy wartości daty są formatowane. Aktualny znak użyty jako separator daty w sformatowanym wyjściu jest określony przez ustawienia systemowe.
c Wyświetla datę jako ddddd i czas jako ttttt, w tej kolejności. Wyświetla tylko datę jeżeli nie ma częćci ułamkowej do wartości liczbowej daty, i wyświetla tylko czas jeżeli nie ma części całkowitej.
d Wyświetla dzień jako liczbę bez zera na początku (1-31).
dd Wyświetla dzień jako liczbę z zerem na początku (01-31).
ddd Wyświetla dzień w skrócie (Sun-Sat).
dddd Wyświetla dzień jako pełną nazwę (Sunday-Saturday).
ddddd Wyświetla datę jako kompletną datę (włączając dzień, miesiąc i rok), sformatowaną odpowiednio do ustwień formatu krótkiej daty systemu. Dla Microsoft Windows standardowy format krótkiej daty to m/d/yy.
dddddd Wyświetla wartość liczbową daty jako kompletną datę (włączając dzień, miesiąc i rok) sformatowaną odpowiednio do ustawień długiej daty systemu. Dla Microsoft Windows, standardowy format long date to mmmm dd, yyyy.
w Wyświetla dzień tygodnia jako liczbę (1 dla Niedzieli do 7 dla Soboty)
ww Wyświetla tydzień w roku jako liczbę (1-54)
m Wyświetla miesiąc jako liczbę bez zera na początku (1-12). Jeżeli m nastepuje bezpośrednio po h lub hh, wtedy zostaną wyświetlone minuty zamiast miesiąca.
mm Wyświetla miesiąc jako liczbę z zerem na początku (01-12). Jeżeli m nastepuje bezpośrednio po h lub hh, wtedy zostaną wyświetlone minuty zamiast miesiąca.
mmm Wyświetla miesiąc jako jako skrót (Jan-Dec).
mmmm Wyświetla miesiąc jako pełną nazwę (January-December)
q Wyświetla kwartał roku jako liczbę (1-4).
y Wyświetla dzień w roku jako liczbę (1-366).
yy Wyświetla rok jako dwucyfrową liczbę (00-99).
yyyy Wyświetla rok jako czterocyfrową liczbę (100-9999).
h Wyświetla godzinę jako liczbę bez zera na początku (0-23).
hh Wyświetla godzinę jako liczbę z zerem na początku (00-23)
n Wyświetla minuty jako liczbę bez zera na początku (0-59).
nn Wyświetla minuty jako liczbę z zerem na początku (00-59)
s Wyświetla sekundy jako liczbę bez zera na początku (0-59).
nn Wyświetla sekundy jako liczbę z zerem na początku (00-59).
ttttt Wyświetla czas jako kompletny czas (włączając godziny, minuty, sekundy), sformatowany przy użyciu separatorów czasu zdefiniowanych przez format czasu rozpoznany przez system. Początkowe zera są wyświetlane jeżeli jest ustawiona opcja początkowych zer i czas jest przed 10:00 A.M. lub P.M. Dla Microsoft Windows standardowy format czasu to h:mm:ss.
AM/PM Używa 12-godzinnego zegara i wyświetla litery AM z każdą godziną przed południem. natomiast litery PM z każdą godziną pomiędzy południem a 11:59 PM
am/pm Używa 12-godzinnego zegara i wyświetla małe litery AM z każdą godziną przed południem. Natomiast małe litery PM z każdą godziną pomiędzy południem a 11:59 P.M.
A/P Używa 12-godzinnego zegara i wyświetla literę A z każdą godziną przed południem. natomiast literę P z każdą godziną pomiędzy południem a 11:59 PM
a/p Używa 12-godzinnego zegara i wyświetla małą literę A z każdą godziną przed południem. natomiast małą literę P z każdą godziną pomiędzy południem a 11:59 PM
AM/PM Używa 12-godzinnego zegara i wyświetla łańcuch AM określony przez system, z każdą godziną przed południem. Natomiast łańcuch PM określony przez system, z każdą godziną pomiędzy południem a 11:59 P.M. AM/PM mogą być wyświetlane jak małe lub duże litery, ale zależy to od łańcucha zdefiniowanego przez ustwienia systemowe. Dla Microsoft Windows standardowy format to AM/PM.

na górę strony...

Zdefiniowane formaty numeryczne

Poniższa tabela opisuje zdefiniowane nazwy formatów numerycznych:

Nazwa formatu Opis
General Number Wyświetla liczbę bez separatora tysięcy
Currency Wyświetla liczbę z separatorem tysięcy, jeżeli jest potrzebny; wyświetla dwie cyfry do prawej strony separatora dziesiętnego. Formatowanie jest oparte na ustwieniach lokalnych w systemie.
Fixed Wyświetla przynajmniej jedną cyfrę od lewej i dwie cyfry od prawej strony separatora dziesiętnego.
Standard Wyświetla liczbę z separatorem tysięcy, przynajmniej jedną cyfrę od lewej i dwie cyfry od prawej strony separatora dziesiętnego.
Percent Wyświetla liczbę pomnożoną przez 100 ze znakiem procentu (%) dołączonym do prawej strony, zawsze wyświetla dwie cyfry po prawej stronie separatora dziesiętnego.
Scentific Używa standardowego formatu wykładniczego.
Yes/No Wyświetla Nie(No) jeżeli liczba jest 0, w przeciwnym przypadku wyświetla Tak(Yes).
True/False Wyświetla False jeżeli liczba jest 0, w przeciwnym przypadku wyświetla True.
On/Off Wyświetla Off jeżeli liczba jest 0, w przeciwnym przypadku wyświetla On.

na górę strony...

Formaty numeryczne zdefiniowane przez użytkownika

Poniższa tabela opisuje znaki jakie można używać do tworzenia formatów numerycznych zdefiniowanych przez użytkownika:

Znak Opis
None Wyświetla niesformatowaną liczbę.
(0) Znak pola. Wyświetla cyfrę lub zero. Jeżeli wyrażenie ma cyfrę na pozycji gdzie występuje 0 w wyrażeniu Format, wyświetla ją, w przeciwnym wypadku wyświetla zero na tej pozycji. Jeżeli wyrażenie ma mniej pozycji niż jest zer po obu stronach kropki dziesiętnej w określonym formacie, to do wyświetlanej liczby są dodawane zera. W przypadku, gdy wyrażenie ma więcej pozycji z lewej strony kropki dziesiętnej, to dodatkowe pozycje zostaną wyświetlone; gdy zaś z prawej strony, to zostaną obcięte.
(#) Znak pola. Wyświetla cyfrę lub nic. Jeżeli wyrażenie ma cyfrę na pozycji gdzie występuje 0 w wyrażeniu Format, wyświetla ją, w przeciwnym przypadku nic nie wyświetla na tej pozycji. Działa tak samo jak znak 0, z tą różnicą, że w przypadku, gdy wyrażenie ma mniej pozycji niż jest zer po obu stronach kropki dzisiętnej w określonym formacie, to do wyświetlanej liczby nie są dodawane zera.
(.) Znak dziesiętny. W niektórych lokalnych ustawieniach, przecinek jest używany jako separator dzisiętny. Znak dziesiętny określa pozycję kropki dzisiętnej w utworzonym formacie. Jeżeli z lewej strony tego znaku nie ma znaków pola, to liczby mniejsze od 1 zaczynane są znakiem dzisiętnym. Aby wyświetlić zero na początku wyświetlanej liczby ułamkowej, należy użyć znaku 0 jako pierwszego znaku pola po lewej stronie znaku dziesiętnego. Znak używany jako znak dzisiętny w formatowanym wyjściu zależy od formatu nnumerycznego rozpoznawanego przez system.
(%) Znak procentu. Jest wstawiany do wyrażenia na pozycję, na której ma być wyświetlony. Wyrażenie jest mnożone przez 100.
(,) Separator tysięcy. W niektórych lokalnych ustawieniach, przecinek jest używany jako separator tysięcy. Separator tysięcy oddziela od siebie tysiące i setki w liczbie, która ma cztery lub więcej miejsc po lewej stronie separatora dziesiętnego. Standardowe użycie separatora tysięcy jest określone, jeżeli format zawiera separator tysięcy otoczony przez znaki pola (0 lub #). Dwa bezpośrednio do siebie przylegające separatory tysięcy lub separator tysięcy bezpośrednio po lewej stronie separatora dziesiętnego, oznaczają, że wielkość liczby, jeżeli jest to potrzebne, jest dzielona przez 1000. Na przykład, można użyć wyrażenia format "##0,," do przedstawienia liczy 100 milionów jako 100. Liczby mniejsze niż 1 milion są wyświetlane jako 0. Dwa bezpośrednio po sobie następujące separatory tysięcy w jakiejkolwiek innej pozycji, niż po lewej stronie znaku dziesiętnego, są traktowane jako normalne separatory tysięcy. Znak używany jako separator tysięcy w formatowanym wyjściu zależy od formatu nnumerycznego rozpoznawanego przez system.
(:) Separator czasu. W niektórych lokalnych ustawieniach, inne znaki mogą być używane jako separatory czasu. Separator czasu oddziela od siebie godziny, minuty i sekundy, gdy wartość czasu jest formatowana. Znak używany jako separator czasu w formatowanym wyjściu jest określony przez ustawienia systemu.
(/) Separator daty. W niektórych lokalnych ustawieniach, inne znaki mogą być używane jako separatory daty. Separator daty oddziela od siebie dzień, miesiąc i rok, gdy wartość daty jest formatowana. Znak używany jako separator daty w formatowanym wyjściu jest określony przez ustawienia systemu.
(E+ E- e+ e-) Format wykładniczy. Umieszczenie jednego z symboli wykładniczych z prawej strony znaków pola powoduje, że liczba jest wyświetlana w formacie wykładniczym. Litera E lub e jest umieszczona między liczbą a wykładnikiem. Dla liczb ujemnych należy użyć symboli z minusem. Liczbę znaków wykładnika potęgi określa się za pomocą znaków pola umieszczonych z prawej strony symbolu wykładniczego.
- + $ ( ) Wyświetla znak literowy. Do wyświetlenia znaków innych niż wymienione, należy je poprzedzić backslashem (\) lub zamknąć w dwóch znakach cudzysłowia (" ").
(\) Znak zezwolenia. Pozwala na wyświetlenie znaków używanych do formatowania. Aby wyświetlić taki znak należy poprzedzić go znakiem zezwolenia. Aby wyświetlić znak zezwolenia należy użyć go podwójnie. Przykłady znaków, które nie mogą być normalnie wyświetlane: znaki formatowania daty i czasu (a, c, d, h, m, n, p, q, s, t, w, y, /, :), znaki formatowania numerycznego (#, 0, %, E, e, przecinek, kropka), znaki formatowania łańcuchowego (@, &, <, >, !)
("ABC") Wyświetla łańcuch zawarty między dwoma znakami cudzysłowia (" "). Aby włączyć łąńcuch do argumentu Format z kodu, należy użyć Chr(34) do załączenia tekstu (34 jest kodem znaku cudzysłowia (")).

na górę strony...

Formaty łańcuchowe zdefiniowane przez użytkownika

Poniższa tabela opisuje znaki jakie można używać do tworzenia wyrażenia Format dla łańcuchów:

Znak Opis
@ Miejsce na znak. Wyświetla znak albo spację. Jeżeli łańcuch zawiera znak na pozycji gdzie jest symbol (@) w wyrażeniu Format, wyświetla go, w przeciwnym wypadku wyświetla spację na tej pozycji. Miejsca na znaki są wypełniane od prawej strony do lewej, o ile nie występuje znak wykrzyknika (!) w wyrażeniu Format.
& Miejsce na znak. Wyświetla znak lub nic. Jeżeli łańcuch zawiera znak na pozycji gdzie jest symbol (&) w wyrażeniu Format, wyświetla go, w przeciwnym wypadku nie wyświetla nic. Miejsca na znaki są wypełniane od prawej strony do lewej, o ile nie występuje znak wykrzyknika (!) w wyrażeniu Format.
< Wyświetla wszystkie znaki w formacie małych liter.
> Wyświetla wszystkie znaki w formacie dużych liter.
! Powoduje wypełnianie miejsc na znaki od lewej do prawej. Standardowo są wypełniane od prawej do lewej.

na górę strony...

Przykład użycia funkcji Format:

Dim varCzas, varData, varStr
varCzas = #17:04:23#
varData = #January 27, 1993#

varStr = Format(Time, "Long Time")
  'zwraca bieżący czas w formacie krótkiego czasu

varStr = Format(Date, "Long Date")
  'zwraca datę w formacie długiej daty

varStr = Format(varCzas, "h:m:s")
  'zwraca "17:4:23"
varStr = Format(varCzas, "hh:mm:ss AMPM")
  'zwraca "05:04:23 PM"
varStr = Format(varData, "dddd, mmm d yyyy")
  'zwraca "Wednesday, Jan 27 1993"

varStr = Format(23)
  'zwraca "23"

' User-defined formats. varStr = Format(5459.4, "##,##0.00")
  'zwraca "5,459.40"
varStr = Format(334.9, "###0.00")
  'zwraca "334.90"
varStr = Format(5, "0.00%")
  'zwraca "500.00%"

varStr = Format("HELLO", "<")
  'zwraca "hello"
varStr = Format("To jest TO", ">")
  'zwraca "TO JEST TO"


(Zmienne i typy zmiennych, funkcje Date i Time zostały opisane w innych częściach kursu.)


na górę strony...


Google
 
Poprzednia | Wyżej | Strona główna | Spis Treści | Index haseł | Opis VB

BokDol
PoprzedniaWyżejGłównaSpis treściIndex hasełZnajdźBokGora
BokGora