Datums- und Zahlenformate

In diesem Dokument wird beschrieben, wie Sie neue Datums- und Zahlenformatmuster definieren, die Sie in Ihre API-Anfrage einfügen können.

Mit den Datums-, Uhrzeit- und Zahlenformaten legen Sie fest, wie Ihre Daten in einer Tabelle dargestellt werden. In Google Sheets stehen einige gängige Formate zur Auswahl, Sie können aber auch eigene Formate definieren.

In der Google Sheets-Benutzeroberfläche können Sie Zellen über das Menü Format > Zahl Zahlen- und Datumsformate zuweisen. In der Google Sheets API legen Sie diese Formate mit einem spreadsheets.batchUpdate-Methodenaufruf fest, um ein UpdateCellsRequest oder ein RepeatCellRequest zu senden. In der Anfrage konfigurieren Sie das Objekt NumberFormat, indem Sie einen NumberFormatType (z. B. NUMBER, CURRENCY, PERCENT, DATE oder TIME) und einen optionalen pattern-String angeben. Wenn Sie pattern weglassen, verwendet Google Sheets das Standardformatmuster für den angegebenen type basierend auf dem locale der Tabelle (z. B. $1,000.12 für CURRENCY in en_US).

Im Beispiel Benutzerdefiniertes Datums-/Uhrzeit- oder Dezimalformat für einen Bereich festlegen wird gezeigt, wie Sie ein Formatmuster mit der Sheets API festlegen. Beachten Sie, dass das tatsächliche Rendering des Formats von der locale der Tabelle abhängt. In diesem Dokument wird davon ausgegangen, dass locale den Wert en_US hat. Sie können die locale einer Tabelle ermitteln, indem Sie das Objekt SpreadsheetProperties mit der Methode spreadsheets.get für die Ressource spreadsheets lesen.

Weitere Beispiele finden Sie unter Grundlegende Formatierung und Bedingte Formatierung.

Datums- und Uhrzeitwerte

In Google Sheets werden Datums- und Uhrzeitwerte wie in den meisten anderen Tabellenkalkulationsanwendungen als Dezimalwerte behandelt. So können Sie in Formeln arithmetische Operationen mit ihnen ausführen, z. B. Tage oder Wochen erhöhen, zwei Datums- und Uhrzeitangaben addieren oder subtrahieren und andere ähnliche Vorgänge ausführen.

In Google Sheets wird eine Form des Epoch-Datums verwendet, die in Tabellenkalkulationen üblich ist. Der ganzzahlige Teil des Werts (links vom Dezimalzeichen) zählt die Tage seit dem 30. Dezember 1899. Der Bruchteil (rechts vom Dezimalzeichen) zählt die Zeit als Bruchteil eines Tages. Beispiel: Der 1. Januar 1900 um 12:00 Uhr ist 2.5, 2, weil es 2 Tage nach dem 30. Dezember 1899 ist, und 0.5, weil 12:00 Uhr ein halber Tag ist. Der 1. Februar 1900 um 15:00 Uhr ist 33.625.

In Google Sheets wird das Jahr 1900 korrekt als ein normales Jahr und nicht als ein Schaltjahr behandelt. In Seriennummern für Datum und Uhrzeit wird kein Zeitzonenversatz gespeichert. Stattdessen basieren sie auf der timeZone der Tabelle, die Sie mit der Methode spreadsheets.get aus dem Objekt SpreadsheetProperties lesen können.

Muster für Datums- und Uhrzeitformate

Ein Datums-/Uhrzeitformatmuster ist ein String aus Token-Teilstrings, die in Google Sheets beim Parsen durch die entsprechenden Datums-/Uhrzeitelemente (z. B. Monat oder Stunde) ersetzt werden.

Tokens für Datums- und Uhrzeitformate

In der folgenden Tabelle sind die Token-Teilstrings definiert, die Sie in einem Datums-/Uhrzeitformatmuster verwenden können. Das Zeichen + gibt an, dass das vorherige Zeichen einmal oder mehrmals vorkommen kann und trotzdem mit dem Muster übereinstimmt. In Google Sheets werden Zeichen, die nicht in dieser Tabelle aufgeführt sind, als Literale behandelt und unverändert ausgegeben.

Token Beschreibung
h Tageszeit. Wechselt zwischen dem 12- und 24-Stunden-Format, je nachdem, ob im String ein AM- oder PM-Indikator vorhanden ist.
hh+ Wie oben, aber mit einer führenden 0 für 1–9.
m Wenn das vorherige nicht literale Token Stunden oder das nachfolgende Sekunden waren, stellt es Minuten in der Stunde dar (ohne führende 0). Andernfalls wird der Monat des Jahres als Zahl (ohne führende 0) dargestellt.
M Der Monat des Jahres ohne führende Null. Verwenden Sie dieses Token, um in Ihrem Muster ausdrücklich einen Monat anstelle einer Minute anzugeben.
mm Wie m, aber mit einer führenden 0 für beide Fälle.
MM Der Monat des Jahres mit einer führenden 0. Verwenden Sie dieses Token, um in Ihrem Muster ausdrücklich einen Monat anstelle einer Minute anzugeben.
mmm Abkürzung aus drei Buchstaben für den Monat (z. B. „Feb“).
mmmm Vollständiger Monatsname. mmmmmm+ entspricht ebenfalls diesem Muster.
mmmmm Erster Buchstabe des Monats (z. B. „J“ für Juni).
s Sekunden der Minute ohne führende 0.
ss Sekunden der Minute mit einer führenden 0.
[h+] Anzahl der verstrichenen Stunden in einer Zeitdauer. Die Anzahl der Buchstaben gibt die Mindestanzahl der Ziffern an (führende Nullen werden hinzugefügt).
[m+] Anzahl der verstrichenen Minuten in einer Zeitdauer. Die Anzahl der Buchstaben gibt die Mindestanzahl der Ziffern an (führende Nullen werden hinzugefügt).
[s+] Anzahl der verstrichenen Sekunden in einer Zeitdauer. Die Anzahl der Buchstaben gibt die Mindestanzahl der Ziffern an (führende Nullen werden hinzugefügt).
d Tag des Monats, ohne führende 0 für Zahlen kleiner als 10.
dd Tag des Monats, mit einer führenden 0 für Zahlen kleiner als 10.
ddd Wochentag, Abkürzung mit drei Buchstaben (z. B. „Mon“).
dddd+ Wochentag, vollständiger Name.
y Zweistellige Jahreszahl.
yy
yyy Jahr (4-stellig).
yyyy+
a/p Zeigt „a“ für AM und „p“ für PM an. Außerdem wird das 12-Stunden-Format verwendet. Wenn der Tokenbuchstabe großgeschrieben wird, wird auch die Ausgabe großgeschrieben.
am/pm Wie oben, aber es wird „AM“ oder „PM“ angezeigt und immer großgeschrieben.
0 Zehntelsekunden. Sie können die Genauigkeit mit 00 auf zwei Stellen oder mit 000 auf drei Stellen (Millisekunden) erhöhen.
\ Behandelt das nächste Zeichen als Literalwert und nicht als Sonderzeichen.
"text" Zeigt den Text innerhalb der Anführungszeichen als Literal an.

Beispiele für Datums- und Uhrzeitformate

Die folgende Tabelle enthält einige Beispielmuster und die entsprechende Darstellung von Datum und Uhrzeit für das Datum und die Uhrzeit Tuesday, April 5, 2016, 4:08:53.528 PM. Im zweiten Abschnitt der Tabelle finden Sie Beispiele für Formate der verstrichenen Zeit für eine verstrichene Zeit von 3 hours, 13 minutes, 41.255 seconds:

Datum/Uhrzeit-Muster Tuesday, April 5, 2016, 4:08:53.528 PM
h:mm:ss.00 a/p 16:08:53.53
hh:mm A/P".M." 16:08 Uhr
yyyy-mm-dd 2016-04-05
mmmm d \[dddd\] 5. April [Dienstag]
h PM, ddd mmm dd Di., 5. Apr., 16:00 Uhr
dddd, m/d/yy at h:mm Dienstag, 5.4.16 um 16:08 Uhr
Muster für verstrichene Zeit 3 hours, 13 minutes, 41.255 seconds
[hh] 03
[mmmm] 0193
[ss] 11621

Zahlenformatmuster

Ein Zahlenformatmuster ist ein String aus Token-Teilstrings, die in Google Sheets beim Parsen durch die entsprechenden Zahlendarstellungen ersetzt werden. Ein Zahlenformatmuster kann aus bis zu vier Abschnitten bestehen, die durch Semikolons getrennt sind. Diese Abschnitte definieren die separaten Formate für positive Zahlen, negative Zahlen, Null und Text (in dieser Reihenfolge):

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

Sie müssen nicht alle vier Abschnitte in ein Format aufnehmen. Wenn Sie nur einen Abschnitt angeben, verwendet Google Sheets dieses Format für alle Werte. Wenn Sie zwei Abschnitte verwenden, wird das erste Format auf null und positive Zahlen und das zweite Format auf negative Zahlen angewendet. Wenn Sie drei Abschnitte verwenden, werden separate Formate für positive, negative und Nullwerte definiert. Beispiel:

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

Wenn es jedoch zwei oder mehr Abschnitte gibt und der letzte Abschnitt ein Textformat ist, wird dieser Abschnitt in Google Sheets als Textformat behandelt und die anderen Abschnitte verhalten sich so, als gäbe es einen Abschnitt weniger. Durch die Einbeziehung eines endgültigen Textformats können Sie also Formate wie die folgenden definieren:

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

Das Parsen eines Formats in Abschnitte erfolgt vor anderen Parsing-Vorgängen. Daher ist es möglich, ein Datums- oder Uhrzeitformat als einen der Abschnitte einzufügen (obwohl dies nur begrenzt nützlich ist).

Tokens für Zahlenformate

In der folgenden Tabelle sind die Token-Teilstrings definiert, die Sie in einem Formatabschnitt verwenden können, um festzulegen, wie die Werte für diesen Abschnitt dargestellt werden sollen.

Token Beschreibung
0 Stellt eine Ziffer in der Zahl dar. Wenn die Ziffer eine unbedeutende 0 ist, wird sie als 0 gerendert. Beispiel: Das Zahlenformat 00.0 rendert die Zahl 3 als „03.0“.
# Stellt eine Ziffer in der Zahl dar. Wenn die Ziffer eine unbedeutende 0 ist, wird sie nicht gerendert. Beispiel: Mit dem Zahlenformat ##0 wird die Zahl 12 als „12“ dargestellt.
? Stellt eine Ziffer in der Zahl dar. Wenn die Ziffer eine unbedeutende 0 ist, wird sie als Leerzeichen dargestellt. Dies wird häufig verwendet, um das Dezimaltrennzeichen in einer Spalte auszurichten, wenn Schriftarten mit fester Breite verwendet werden. Beispiel: Mit dem Zahlenformat ???.??? wird die Zahl 12, 4 so dargestellt: „ 12.4 “.
. Der erste Punkt stellt das Dezimaltrennzeichen in der Zahl dar. Nachfolgende Punkte werden als Literale gerendert. Wenn Sie ein Dezimaltrennzeichen in das Format einfügen, wird es immer gerendert, auch bei ganzen Zahlen. Beispiel: #0.# rendert die Zahl 3 als „3.“.
% Wird als Literal angezeigt, führt aber auch dazu, dass vorhandene Zahlen vor dem Rendern mit 100 multipliziert werden, um Prozentsätze besser lesbar zu machen. Beispiel: Mit dem Zahlenformat #% wird die Zahl 0, 25 als „25%“ dargestellt.
, Wenn es zwischen zweistelligen Zeichen (0, # oder ?) steht, wird die gesamte Zahl mit Gruppentrennzeichen (Gruppierung nach Tausendern) dargestellt. Wenn es auf die Ziffernzeichen folgt, werden die Ziffern pro Komma um den Faktor 1.000 skaliert. Beispielsweise wird die Zahl 12.200.000 im Format #0.0,, als 12.2 dargestellt.
E- Gibt die Zahl im wissenschaftlichen Format wieder. Die Formatierung links von E wird für den Teil ohne Exponent und die Formatierung rechts von E für den Teil mit Exponent verwendet. E+ zeigt ein +-Zeichen für positive Exponenten an. E- zeigt nur ein Vorzeichen für negative Exponenten an. Wenn Kleinbuchstaben verwendet werden, wird die Ausgabe e ebenfalls in Kleinbuchstaben geschrieben. Beispiel: Das Zahlenformat ##0.00#E+## rendert die Zahl 0, 0000001 als „100.00E-9“.
E+
e-
e+
/ Wenn er zwischen zweistelligen Zeichen (0, # oder ?) steht, werden diese Zifferngruppen als Bruchformat behandelt. Beispiel: Mit dem Zahlenformat 0 #/# wird die Zahl 23, 25 als 23 1/4 dargestellt. Der Nenner kann auch eine Ganzzahl sein. In diesem Fall wird diese Ganzzahl als Nenner erzwungen. Im Zahlenformat 0 #/8 wird die Zahl 23,25 als 23 2/8 angezeigt. Der Bruchteil wird nicht gerendert, wenn der Zähler 0 ist. Die Zahl 23,1 mit dem Zahlenformat 0 #/3 wird als 23 dargestellt, da 0,1 auf 0/3 gerundet wird. / ist nicht mit dem wissenschaftlichen Format oder einem Format mit Dezimalpunkt kompatibel.
* Aus Kompatibilitätsgründen mit Microsoft Excel-Zahlenformaten enthalten. Dieses Token wird von Google Sheets ignoriert.
_ Überspringt das nächste Zeichen und rendert ein Leerzeichen. Verwenden Sie dieses Token, um Zahlenformate auszurichten, bei denen der negative Wert in Klammern gesetzt ist.
\ Behandelt das nächste Zeichen als Literalwert und nicht als Sonderzeichen. Beispiel: Mit dem Zahlenformat \#0 wird die Zahl 10 als „#10“ dargestellt.
"text" Zeigt den Text innerhalb der Anführungszeichen als Literal an.
@ Wenn die Zelle eine Texteingabe enthält, wird der Rohtext für die Zelle eingefügt. Nicht kompatibel mit anderen Sonderzeichen und wird nicht für numerische Werte angezeigt (die im allgemeinen Format angezeigt werden).
$ - + ( ) : space Diese Zeichen und gängige Währungssymbole (z. B. $, €, £ und ¥) werden von Google Sheets als Literale behandelt und unverändert angezeigt.

Meta-Anweisungen

Außerdem kann jeder Formatabschnitt optionale Metaanweisungen enthalten, die in []-Zeichen eingeschlossen sind, dem Format vorangestellt sind und zusätzliche Anweisungen enthalten:

Anleitung Beschreibung
[condition] Ersetzt den standardmäßigen positiven, negativen oder Null-Vergleich des Abschnitts durch einen anderen bedingten Ausdruck. Beispiel: [<100]"Low";[>1000]"High";000 rendert das Wort „Niedrig“ für Werte unter 100, „Hoch“ für Werte über 1.000 und eine dreistellige Zahl (mit führenden Nullen) für alle Werte dazwischen. Sie können Bedingungen nur auf die ersten beiden Unterformate anwenden. Wenn eine Zahl mit mehr als einem Unterformat übereinstimmt, verwendet Google Sheets die erste Übereinstimmung. Wenn ein drittes Format vorhanden ist, wird es in Google Sheets für „alles andere“ verwendet. Wenn eine Zahl mit keinem der beiden Formate übereinstimmt, werden in Google Sheets alle „#“-Zeichen über die gesamte Zellenbreite gerendert. Wenn es vorhanden ist, wird das vierte Format immer für Text verwendet.
[Color] or [Color#] Bewirkt, dass alle Werte, die mit diesem Unterformat gerendert werden, in der angegebenen Textfarbe angezeigt werden. Gültige Werte für Color sind Black, Blue, Cyan, Green, Magenta, Red, White oder Yellow. Gültige Werte für „#“ in Color# sind 1 bis 56. Farben im Zahlenformat überschreiben alle vom Nutzer eingegebenen Farben in der Zelle, aber nicht die Farben, die durch die bedingte Formatierung festgelegt wurden. Diese Farbpalette enthält eine Liste von Farben, die den einzelnen Zahlen entsprechen. Sie basieren auf dem Attribut ColorIndex in Microsoft Excel.
[$currency] Zeigt das angegebene Währungssymbol oder den angegebenen Währungscode als Literal an (z. B. [$€]#,##0.00 oder [$CAD]#,##0.00). Wenn Sie nach einem Bindestrich einen optionalen Gebietsschemacode angeben (z. B. [$CAD-1009]), wird der Gebietsschemacode in Google Sheets ignoriert.

Beispiele für Zahlenformate

Die folgende Tabelle enthält einige Beispielmuster und die entsprechende Wiedergabe der formatierten Zahl:

Zahl Muster Formatierter Wert
12345.125 ####.# 12345.1
12,34 000.0000 012.3400
12 #.0# 12.0
5,125 # ???/??? 5 1/8
12.000 #,### 12.000
1234.56
-1234.56
$#,##0.00;($#,##0.00) 1.234,56 $
(1.234,56 $)
1230000 0.0,,"M" 1,2 Mio.
1234500000 0.00e+00 1,23e+09
123114.15115
MyText
###0.000;"TEXT: "_(@_) 123114.151
TEXT: MyText
1234
-1234
0
MyText
[Blue]#,##0;[Red]#,##0;[Green]0.0;[Magenta]_(@_) 1,234
1,234
0.0
MyText
1005
32
527
[>1000]"HIGH";[Color43][<=200]"LOW";0000 HOCH
NIEDRIG
0527