Mit der Google Sheets API können Sie Daten in Tabellenkalkulationen auf verschiedene Weise bearbeiten. Die meisten Funktionen, die Nutzern in der Sheets-Benutzeroberfläche zur Verfügung stehen, können auch mit der Sheets API ausgeführt werden. Die Beispiele auf dieser Seite zeigen, wie Sie einige häufige Tabellenkalkulationsvorgänge mit der Sheets API ausführen können.
Diese Beispiele werden in Form von HTTP-Anfragen dargestellt, um sprachneutral zu sein. Informationen zum Implementieren einer Batchaktualisierung in verschiedenen Sprachen mit den Google API-Clientbibliotheken finden Sie unter Tabellenkalkulationen aktualisieren.
In diesen Beispielen geben die Platzhalter SPREADSHEET_ID und SHEET_ID
an, wo Sie diese IDs angeben müssen. Sie finden die Tabellen
ID in der Tabellen-URL. Sie können die Tabellenblatt-ID mit der
spreadsheets.get Methode abrufen. Die
Bereiche werden in der A1-Notation angegeben. Ein Beispielbereich ist Sheet1!A1:D5.
Datenvalidierung auf einen Bereich anwenden
Das folgende
spreadsheets.batchUpdate
Codebeispiel zeigt, wie Sie mit dem
SetDataValidationRequest
eine Datenvalidierungsregel anwenden, bei der „Wert > 5“ für jede Zelle im Bereich A1:D10 gilt.
Das Anfrageprotokoll ist unten dargestellt.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"setDataValidation": {
"range": {
"sheetId": SHEET_ID,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"rule": {
"condition": {
"type": "NUMBER_GREATER",
"values": [
{
"userEnteredValue": "5"
}
]
},
"inputMessage": "Value must be > 5",
"strict": true
}
}
}
]
}Zellenformatierung kopieren und einfügen
Das folgende
spreadsheets.batchUpdate
-Codebeispiel zeigt, wie Sie mit
CopyPasteRequest
nur die Formatierung im Bereich A1:D10 kopieren und in den Bereich F1:I10
im selben Tabellenblatt einfügen. Die Methode verwendet die
PasteType Enumeration
mit PASTE_FORMAT, um nur die Formatierung und Datenvalidierung einzufügen. Die ursprünglichen Werte in A1:D10 bleiben unverändert.
Das Anfrageprotokoll ist unten dargestellt.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"copyPaste": {
"source": {
"sheetId": SHEET_ID,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"destination": {
"sheetId": SHEET_ID,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 5,
"endColumnIndex": 9
},
"pasteType": "PASTE_FORMAT",
"pasteOrientation": "NORMAL"
}
}
]
}Zellen ausschneiden und einfügen
Das folgende
spreadsheets.batchUpdate
-Codebeispiel zeigt, wie Sie
CutPasteRequestverwenden.
Der Bereich A1:D10 wird ausgeschnitten und die
PasteType Enumeration
mit PASTE_NORMAL wird verwendet, um die Werte, Formeln, Formatierung und Zusammenführungen in den
Bereich F1:I10 im selben Tabellenblatt einzufügen. Die ursprünglichen Zellinhalte des Quellbereichs werden entfernt.
Das Anfrageprotokoll ist unten dargestellt.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"cutPaste": {
"source": {
"sheetId": SHEET_ID,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"destination": {
"sheetId": SHEET_ID,
"rowIndex": 0,
"columnIndex": 5
},
"pasteType": "PASTE_NORMAL"
}
}
]
}Formel auf einen Bereich anwenden
Das folgende
spreadsheets.batchUpdate
-Codebeispiel zeigt, wie Sie mit
RepeatCellRequest
die Formel =FLOOR(A1*PI()) in den Bereich B1:D10 kopieren. Der Bereich der Formel wird für jede Zeile und Spalte im Bereich automatisch erhöht, beginnend mit der Zelle oben links. Zelle B1 enthält beispielsweise die Formel =FLOOR(A1*PI()), während Zelle D6 die Formel =FLOOR(C6*PI()) enthält.
Das Anfrageprotokoll ist unten dargestellt.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"repeatCell": {
"range": {
"sheetId": SHEET_ID,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 1,
"endColumnIndex": 4
},
"cell": {
"userEnteredValue": {
"formulaValue": "=FLOOR(A1*PI())"
}
},
"fields": "userEnteredValue"
}
}
]
}Bereich mit mehreren Sortierspezifikationen sortieren
Das folgende
spreadsheets.batchUpdate
-Codebeispiel zeigt, wie Sie mit
SortRangeRequest
den Bereich A1:D10 sortieren, zuerst nach Spalte B in aufsteigender Reihenfolge, dann nach Spalte C
in absteigender Reihenfolge und dann nach Spalte D in absteigender Reihenfolge.
Das Anfrageprotokoll ist unten dargestellt.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"sortRange": {
"range": {
"sheetId": SHEET_ID,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"sortSpecs": [
{
"dimensionIndex": 1,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 2,
"sortOrder": "DESCENDING"
},
{
"dimensionIndex": 3,
"sortOrder": "DESCENDING"
}
]
}
}
]
}