Mit der Google Sheets API können Sie die Formatierung von Zellen und Bereichen in Tabellen aktualisieren. Die Beispiele auf dieser Seite veranschaulichen, wie einige gängige Formatierungsvorgänge mit der Sheets API ausgeführt werden können. Weitere Beispiele für die bedingte Formatierung finden Sie auf der Schemaseite Bedingte Formatierung.
Beim Aktualisieren einer Tabelle können bei einigen Arten von Anfragen Antworten zurückgegeben werden.
Diese werden in einem Array zurückgegeben, wobei jede Antwort denselben Index wie die entsprechende Anfrage belegt. Für einige Anfragen gibt es keine Antworten, bei denen die Antwort leer ist. Die Antwortstruktur für diese Beispiele finden Sie unter spreadsheets.batchUpdate
.
Diese Beispiele werden in Form von sprachneutralen HTTP-Anfragen präsentiert. Informationen zum Implementieren einer Batch-Aktualisierung in verschiedenen Sprachen mithilfe der Google API-Clientbibliotheken finden Sie unter Tabellen aktualisieren.
In diesen Beispielen geben die Platzhalter SPREADSHEET_ID und SHEET_ID an, wo Sie diese IDs angeben müssen. Die Tabellen-ID finden Sie in der Tabellen-URL. Die Tabellenblatt-ID können Sie mit der Methode spreadsheets.get
abrufen. Die Bereiche werden in der A1-Schreibweise angegeben. Ein Beispielbereich ist Sheet1!A1:D5.
Im obigen Video erfahren Sie, wie Sie Tabellenzellen auf verschiedene Arten formatieren, z. B. fixierte Zeilen erstellen, Zellen fett formatieren, Währungsformatierung implementieren, Zellenvalidierung durchführen und Zellenwerte einschränken.
Zellenrahmen bearbeiten
Im folgenden Codebeispiel für spreadsheets.batchUpdate
wird gezeigt, wie Sie mithilfe von UpdateBordersRequest
jeder Zelle im Bereich A1:F10 einen gestrichelten blauen Rahmen oben und unten zuweisen. Mit dem Feld innerHorizontal
wird der Bereich innerhalb des Bereichs horizontal umrahmt.
Wird das Feld weggelassen, werden die Rahmen nur am oberen und unteren Rand des gesamten Bereichs hinzugefügt.
Das Anfrageprotokoll ist unten zu sehen.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateBorders": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 6 }, "top": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "bottom": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "innerHorizontal": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, } } ] }
Kopfzeile formatieren
Im folgenden Codebeispiel für spreadsheets.batchUpdate
wird gezeigt, wie Sie mit RepeatCellRequest
eine Kopfzeile in einem Tabellenblatt formatieren. Die erste Anfrage aktualisiert die Textfarbe, die Hintergrundfarbe, die Schriftgröße und die Textausrichtung und macht den Text fett. Wenn im Feld range
die Spaltenindexe weggelassen werden, wird die gesamte Zeile formatiert. Mit der zweiten Anfrage werden die Tabellenblatteigenschaften so angepasst, dass die Kopfzeile fixiert wird.
Das Anfrageprotokoll ist unten zu sehen.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 1 }, "cell": { "userEnteredFormat": { "backgroundColor": { "red": 0.0, "green": 0.0, "blue": 0.0 }, "horizontalAlignment" : "CENTER", "textFormat": { "foregroundColor": { "red": 1.0, "green": 1.0, "blue": 1.0 }, "fontSize": 12, "bold": true } } }, "fields": "userEnteredFormat(backgroundColor,textFormat,horizontalAlignment)" } }, { "updateSheetProperties": { "properties": { "sheetId": SHEET_ID, "gridProperties": { "frozenRowCount": 1 } }, "fields": "gridProperties.frozenRowCount" } } ] }
Zellen verbinden
Im folgenden Codebeispiel für spreadsheets.batchUpdate
wird gezeigt, wie Sie mit MergeCellsRequest
Zellen verbinden. In der ersten Anforderung wird der A1:B2-Bereich zu einer einzigen Zelle zusammengeführt. In der zweiten Anfrage werden die Spalten in A3:B6 zusammengeführt, wobei die Zeilen getrennt bleiben.
Das Anfrageprotokoll ist unten zu sehen.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 2, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_ALL" } }, { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 2, "endRowIndex": 6, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_COLUMNS" } }, ] }
Benutzerdefiniertes Datums- oder Dezimalformat für einen Bereich festlegen
Im folgenden Codebeispiel für spreadsheets.batchUpdate
wird gezeigt, wie Sie mit RepeatCellRequest
Zellen aktualisieren, um benutzerdefinierte Datums- und Zahlenformate zu erhalten. Die erste Anfrage weist den Zellen im Bereich A1:A10 das benutzerdefinierte Datum/Uhrzeit-Format hh:mm:ss am/pm,
ddd mmm dd yyyy
zu. Ein Beispiel für Datum/Uhrzeit in diesem Format ist: "02:05:07 PM, Sun Apr
03 2016".
Die zweite Anfrage gibt den Zellen in B1:B10 das benutzerdefinierte Zahlenformat #,##0.0000
, das angibt, dass Zahlen mit Kommatrennzeichen gruppiert werden sollen, dass vier Ziffern nach dem Dezimalzeichen stehen und alle bis auf eine führende Null entfernt werden sollen. So wird beispielsweise die Zahl „3.14“ als „3,1400“ und „12345.12345“ als „12,345.1235“ dargestellt.
Das Anfrageprotokoll ist unten zu sehen.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 1 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "DATE", "pattern": "hh:mm:ss am/pm, ddd mmm dd yyyy" } } }, "fields": "userEnteredFormat.numberFormat" } }, { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 1, "endColumnIndex": 2 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "NUMBER", "pattern": "#,##0.0000" } } }, "fields": "userEnteredFormat.numberFormat" } } ] }