Formaty daty i liczb

Format daty i godziny pozwala kontrolować sposób wyświetlania danych w arkuszu. Arkusze Google udostępniają kilka popularnych formatów, ale możesz też definiować własne.

W interfejsie Arkuszy możesz zastosować formatowanie liczb i daty do komórek, korzystając z menu Formatuj > Liczba. W interfejsie Sheets API ustawiasz te formaty za pomocą wywołania metody spreadsheets.batchUpdate służącej do wysyłania UpdateCellsRequest lub RepeatCellRequest.

Na tej stronie opisujemy, jak zdefiniować nowe wzorce formatu daty i liczby, które można uwzględnić w żądaniu do interfejsu API. Przykład Ustaw niestandardowy zakres daty i godziny lub zakres dziesiętny zakresu pokazuje, jak ustawić wzór formatu za pomocą interfejsu API. Pamiętaj, że rzeczywiste renderowanie formatu zależy od locale arkusza kalkulacyjnego. W tym przewodniku przyjęto, że locale to en_US. locale arkusza kalkulacyjnego można określić, czytając element SpreadsheetProperties za pomocą żądania spreadsheets.get.

Wartości daty i godziny

Arkusze, podobnie jak większość innych aplikacji do obsługi arkuszy kalkulacyjnych, traktować wartości daty i godziny jako wartości dziesiętne. Umożliwia to wykonywanie równań arytmetycznych w formułach, dzięki czemu możesz zwiększać dni lub tygodnie, dodawać lub odejmować 2 daty i godziny oraz wykonywać inne podobne operacje.

Arkusze używają daty epoki, która jest często używana w arkuszach kalkulacyjnych. Całkowita liczba wartości (po lewej stronie dziesiętnego) liczy dni od 30 grudnia 1899. Część ułamkowa (po prawej) pokazuje czas jako ułamek jednego dnia. Na przykład 1 stycznia 1900 roku w południe jest 2.5, 2, bo jest 2 dni po 30 grudnia 1899 roku, a 0.5 – południe wynosi pół dnia. 1 lutego 1900 roku o 15:00 jest 33.625.

Arkusze 1900 prawidłowo traktują rok 2000 jako typ roku, a nie rok przestępny.

Wzorce formatu daty i godziny

Wzorzec formatu daty i godziny to ciąg znaków tokena, który po przeanalizowaniu zostaje zastąpiony odpowiednimi elementami daty i godziny (takimi jak miesiąc lub godzina).

Tokeny formatu daty i godziny

W tabeli poniżej znajdziesz ciągi tokenów, których możesz używać we wzorcu formatu daty i godziny. Znak + wskazuje, że poprzedni znak może być wyświetlany więcej niż raz i nadal będzie zgodny ze wzorcem. Znaki niewidoczne w tej tabeli są traktowane jako literały i wyświetlane bez zmian.

Token Opis
h Godzina. Przełącza między formatem 12-24 godzin w zależności od tego, czy w tekście znajduje się wskaźnik AM lub PM.
hh+ Tak jak wcześniej, ale z początkowym zerem dla zakresu 1–9.
m Jeśli poprzedni token nieliterowy był godzinami lub kolejny to sekundy, oznacza on minuty w ciągu godziny (bez początkowego 0). W przeciwnym razie będzie miesiącem roku jako liczbą (bez 0).
M Miesiąc roku bez początkowego 0. Użyj tego tokena, aby wyraźnie określić miesiąc w zamiast wzorca minut.
mm Taka sama jak w m, ale z początkowym zerem w obu przypadkach.
MM Miesiąc w roku z zerem na początku. Użyj tego tokena, aby wyraźnie określić miesiąc w zamiast wzorca minut.
mmm Trzyliterowy skrót miesiąca (np. „lut”).
mmmm Pełna nazwa miesiąca. mmmmmm+ także pasuje do tego.
mmmmm Pierwsza litera nazwy miesiąca (np. „J” w przypadku czerwca).
s Sekundy w minucie bez początkowego 0.
ss Sekund w ciągu minuty z początkowym zerem.
[h+] Liczba godzin, które upłynęły w danym przedziale czasu. Liczba liter oznacza minimalną liczbę cyfr (dodaje 0 s).
[m+] Liczba minut w czasie trwania. Liczba liter oznacza minimalną liczbę cyfr (dodaje 0 s).
[s+] Liczba sekund, które upłynęły w określonym czasie. Liczba liter oznacza minimalną liczbę cyfr (dodaje 0 s).
d Dzień miesiąca bez początkowego 0 dla liczb mniejszych niż 10.
dd Dzień miesiąca z początkowym zerem dla liczb mniejszych niż 10.
ddd Dzień tygodnia, trzyliterowy skrót (np. „Pn”).
dddd+ Dzień tygodnia, pełne imię i nazwisko.
y 2-cyfrowy rok.
yy
yyy Rok: 4 cyfry.
yyyy+
a/p Wyświetla „a” dla AM i „p” dla PM. Zmienia też format godzin na 12-godzinny. Jeśli wielkie litery są zapisywane wielką literą, dane wyjściowe też będą podobne.
am/pm Jak widać powyżej, ale zamiast „AM” lub „PM” jest używany wielkie litery.
0 Kilkadziesiąt sekund. Możesz zwiększyć precyzję do 2 cyfr za pomocą 00 lub 3 cyfr (w milisekundach) za pomocą 000.
\ Traktuje następny znak jako wartość literałową, a nie specjalny.
"text" Wyświetla dowolny tekst umieszczony w cudzysłowie jako literał.

Przykłady formatu daty i godziny

Biorąc pod uwagę datę i godzinę Tuesday, April 5, 2016, 4:08:53.528 PM, w tabeli poniżej znajdziesz przykładowe wzorce i odpowiadające im daty i godziny renderowania. W drugiej sekcji tabeli znajdują się przykłady formatów, których czas upłynął: 3 hours, 13 minutes, 41.255 seconds:

Wzorce daty i godziny Tuesday, April 5, 2016, 4:08:53.528 PM
h:mm:ss.00 a/p 16:08:53.53 p
hh:mm A/P".M." 04:08 po południu
yyyy-mm-dd 2016-04-05
mmmm d \[dddd\] 5 kwietnia [wtorek]
h PM, ddd mmm dd 16:00, wtorek 5 kwi
dddd, m/d/yy at h:mm Wtorek, 5.04.16, 16:08
Upłynęło Wzorce czasu 3 hours, 13 minutes, 41.255 seconds
[hh]:[mm]:[ss].000 03:13:41.255
[mmmm]:[ss].000 0193:41,255

Wzorce formatów liczb

Wzorzec formatu liczby to ciąg znaków, który po przeanalizowaniu zostaje zastąpiony odpowiednim reprezentacją liczb. Wzorzec formatu liczb może składać się z maksymalnie 4 sekcji rozdzielonych średnikami, które określają osobne formaty używane dla liczb dodatnich, liczb ujemnych, zera i tekstu (w tej kolejności):

[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT];[TEXT FORMAT]

Nie musisz uwzględniać wszystkich czterech sekcji w formacie. Jeśli dodasz tylko jedną sekcję, ten format będzie używany w przypadku wszystkich wartości. Użycie dwóch sekcji powoduje, że pierwszy format jest stosowany do liczb dodatnich, a drugi do liczb ujemnych. Użycie trzech sekcji definiuje osobne formaty liczb dodatnich, ujemnych i zerowych. Na przykład:

[NUMBER FORMAT]
[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT]
[POSITIVE FORMAT];[NEGATIVE FORMAT];[ZERO FORMAT]

Jeśli jednak są co najmniej 2 sekcje, a ostatnia zawiera format tekstowy, będzie ona traktowana jako format tekstowy, a pozostałe będzie zachowywać się tak, jakby była mniejsza. Dzięki temu ostateczny format tekstu można określić na przykład:

[POSITIVE/ZERO FORMAT];[NEGATIVE FORMAT];[TEXT FORMAT]
[NUMBER FORMAT];[TEXT FORMAT]

Analizowanie formatu według sekcji odbywa się przed inną analizą, więc możliwe, że w jednej z sekcji zostanie użyta data lub godzina (chociaż ta funkcja jest ograniczona).

Tokeny formatu liczb

Poniższa tabela zawiera podłańcuchy tokenów, których możesz używać w sekcji formatu, aby określić, jak mają być reprezentowane wartości dla tej sekcji.

Token Opis
0 Oznacza cyfrę. Jeśli cyfra jest liczbą nieistotną 0, jest renderowana jako 0. Na przykład format liczb 00.0 renderuje liczbę 3 jako „03.0”.
# Oznacza cyfrę. Jeśli cyfra ma wartość nieistotną 0, nie jest renderowana. Na przykład format liczb ##0 renderuje liczbę 12 jako „12”.
? Oznacza cyfrę. Jeśli cyfra jest nieistotnym 0, jest renderowana jako spacja. Często używa się go do wyrównywania wartości dziesiętnej w kolumnie podczas korzystania z czcionek o stałej szerokości. Na przykład format liczb ???.??? renderuje liczbę 12, 4 jako: „ 12.4 ”.
. Pierwszy okres oznacza punkt po przecinku. Kolejne okresy są renderowane jako literały. Jeśli użyjesz formatu dziesiętnego, będzie on zawsze renderowany, nawet w przypadku liczb całkowitych. Na przykład #0.# renderuje liczbę 3 jako „3.”.
% Pojawia się jako literał, ale powoduje też pomnożenie dotychczasowych liczb przez 100 przed ich wyrenderowaniem, aby zwiększyć czytelność wartości procentowych.
, Jeśli występuje między 2 cyframi (0, # lub ?), renderuje cały numer z separatorami grupowania (grupowanie według tysięcy). Jeśli ciąg zawiera cyfry, skala cyfr zostanie przesunięta o 1000 na przecinek (na przykład format #0.0,, renderuje liczbę 12 200 000 jako 12.2).
E- Renderuje liczbę w formacie naukowym, zachowując formatowanie po lewej stronie E używanej w części niebędącej wykładnikiem oraz formatowanie po prawej stronie E w przypadku części wykładniczej. E+ zawiera znak + oznaczający potęgi. E- wyświetla znak tylko dla negatywnych wykładników. Jeśli użyjesz małych liter, dane wyjściowe (e) też będą małe.
E+
e-
e+
/ Jeśli zawiera on znaki dwucyfrowe (0, # lub ?), będzie traktować te grupy cyfr jako format ułamkowy. Na przykład format liczb 0 #/# renderuje liczbę 23, 25 jako 23 1/4. Mianownik może być również całkowitą liczbą całkowitą. W takim przypadku mianownik musi być liczbą całkowitą. Format liczbowy 0 #/8 wyświetla liczbę 23,25 jako 23 2/8. Jeśli licznik ma wartość 0, ułamek nie jest renderowany. Liczba 23,1 o formacie liczbowym 0 #/3 jest renderowana tylko jako 23 (ponieważ 0,1 jest zaokrąglane do 0/3). Format / jest niezgodny z formatem naukowym lub formatem dziesiętnym.
* Dotyczy to też zgodności z formatami liczb Microsoft Excel. Obecnie jest ignorowana.
_ Pomija następny znak i renderuje spację. Służy do wyrównywania formatów liczb, w których wartość ujemna jest ujęta w nawiasy.
\ Traktuje następny znak jako wartość literałową, a nie specjalny.
"text" Wyświetla dowolny tekst umieszczony w cudzysłowie jako literał.
@ Jeśli komórka ma wpisany tekst, wstawia nieprzetworzony tekst. Niezgodna z pozostałymi znakami specjalnymi i nie wyświetla się w przypadku wartości liczbowych (wyświetlanych w formacie ogólnym).
$ - + ( ) : space Arkusze traktuje te znaki jako literały i wyświetlają je bez zmian.

Instrukcje meta

Dodatkowo każda sekcja formatu może zawierać opcjonalne instrukcje meta z znakami [] poprzedzającymi ten format i zawierające dodatkowe instrukcje. Istnieją 2 typy instrukcji w metatagu, a dana sekcja może odnosić się zarówno do:

Instrukcja Opis
[condition] Zastępuje w sekcji domyślne dodatnie, ujemne lub zerowe porównanie innym wyrażeniem warunkowym. Na przykład [<100]”Low”;[>1000]”High”;000 renderuje słowo „Niski” dla wartości poniżej 100, „Wysoki” dla wartości powyżej 1000 i 3-cyfrowy numer (z 0 s) na każdym innym poziomie. Warunki można stosować tylko do pierwszych 2 formatów. Jeśli liczba pasuje do więcej niż 1 formatu, używany jest pierwszy z nich. Jeśli używany jest trzeci format, jest on używany w polu „Wszystkie pozostałe”. W przeciwnym razie, jeśli liczba nie pasuje do żadnego z tych formatów, jest renderowana, ponieważ wszystkie litery „#” wypełniają szerokość komórki. W przypadku tekstu używany jest czwarty format.
[Color] or [Color#] Powoduje, że każda wartość wyrenderowana przez ten podformat ma określony kolor tekstu. Prawidłowe wartości to Color (czarny), niebieski (niebieski), błękitny, zielony, purpurowy, czerwony, biały lub żółty. Prawidłowe wartości znaku „#” w polu Color# to 0&ndash1;56 (ta paleta kolorów zawiera listę kolorów odpowiadających każdej liczbie). Kolory w formacie liczbowym zastępują kolory wprowadzone przez użytkownika w komórce, ale nie zastępują kolorów ustawionych przez formatowanie warunkowe.

Przykłady formatu liczb

Poniższa tabela zawiera przykładowe wzorce i odpowiadające im formatowanie sformatowane:

Liczba Wzór Sformatowana wartość
12345,125 ####.# 12345,1
12,34 000.0000 012 3400
12 #.0# 12.0
5125 # ???/??? 5 1/8
12000 #,### 12 000
1230000 0.0,,"M" 1,2 mln
1234500000 0.00e+00 1,23e + 9
123114.15115
MójTekst
###0.000;"TEXT: "_(@_) 123114.151
TEKST: MyText
1234
–1234
0
MójTekst
[Blue]#,##0;[Red]#,##0;[Green]0.0;[Magenta]_(@_) 1234
1234
0,0
MyText
1005
32
527
[>1000]"HIGH";[Color43][<=200]"LOW";0000 WYSOKI
NISKI
0527