Tabellenvorgänge

Mit der Google Sheets API können Sie Tabellen erstellen, leeren, kopieren und löschen sowie ihre Eigenschaften steuern. Die Beispiele auf dieser Seite veranschaulichen, wie Sie einige gängige Sheets-Vorgänge mit der Sheets API ausführen können.

Diese Beispiele werden in Form von HTTP-Anfragen präsentiert, um sprachneutral zu sein. Informationen zum Implementieren einer Batch-Aktualisierung in verschiedenen Sprachen mit den 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 würden. Die Tabellen-ID finden Sie in der Tabellen-URL. Sie können die Tabellenblatt-ID mit der Methode spreadsheets.get abrufen. Die Bereiche werden mit der A1-Notation angegeben. Ein Beispielbereich ist Tabelle1!A1:D5.

Tabellenblatt hinzufügen

Im folgenden spreadsheets.batchUpdate-Codebeispiel wird gezeigt, wie Sie mit AddSheetRequest ein Tabellenblatt zu einer Tabelle hinzufügen und gleichzeitig den Titel, die Rastergröße und die Tabfarbe festlegen.

Die Antwort besteht aus einem AddSheetResponse, das ein Objekt mit den Eigenschaften des erstellten Tabellenblatts enthält, z. B. dessen SHEET_ID.

Das Anfrageprotokoll wird unten angezeigt.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "addSheet": {
        "properties": {
          "title": "Deposits",
          "gridProperties": {
            "rowCount": 20,
            "columnCount": 12
          },
          "tabColor": {
            "red": 1.0,
            "green": 0.3,
            "blue": 0.4
          }
        }
      }
    }
  ]
}

Alle Werte aus einem Tabellenblatt löschen, aber die Formatierung beibehalten

Im folgenden spreadsheets.batchUpdate-Codebeispiel wird gezeigt, wie Sie mit UpdateCellsRequest alle Werte aus einem Tabellenblatt entfernen, ohne die Formatierung zu ändern.

Wenn Sie das Feld userEnteredValue ohne entsprechenden Wert angeben, wird dies als Anweisung zum Löschen von Werten im Bereich interpretiert. Diese Einstellung kann auch mit anderen Feldern verwendet werden. Wenn Sie beispielsweise den Wert fields in userEnteredFormat ändern, wird die gesamte von der Sheets API unterstützte Formatierung aus dem Tabellenblatt entfernt, die Zellwerte bleiben jedoch unverändert.

Das Anfrageprotokoll wird unten angezeigt.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateCells": {
        "range": {
          "sheetId": SHEET_ID
        },
        "fields": "userEnteredValue"
      }
    }
  ]
}

Tabellenblatt aus einer Tabelle in eine andere kopieren

Im folgenden spreadsheet.sheets.copyTo-Codebeispiel wird gezeigt, wie ein einzelnes Tabellenblatt, das durch SHEET_ID angegeben wird, aus einer Tabelle in eine andere kopiert wird.

Die Variable TARGET_SPREADSHEET_ID im Anfragetext gibt die Zieltabellenkalkulation an. Die Kopie behält alle Werte, Formatierungen, Formeln und anderen Eigenschaften des Originals bei. Der Titel des kopierten Tabellenblatts wird auf „Kopie von [Titel des Originaltabellenblatts]“ festgelegt.

Die Antwort besteht aus einem SheetProperties-Objekt, das die Eigenschaften des erstellten Tabellenblatts beschreibt.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/sheets/SHEET_ID:copyTo
{
  "destinationSpreadsheetId": "TARGET_SPREADSHEET_ID"
}

Tabellenblatt löschen

Im folgenden spreadsheets.batchUpdate-Codebeispiel wird gezeigt, wie Sie mit DeleteSheetRequest ein durch SHEET_ID angegebenes Tabellenblatt löschen.

Das Anfrageprotokoll wird unten angezeigt.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteSheet": {
        "sheetId": SHEET_ID
      }
    }
  ]
}

Tabellendaten lesen

Das folgende spreadsheets.get-Codebeispiel zeigt, wie Sie Informationen zur sheet-Eigenschaft aus einer spreadsheet abrufen, die durch SHEET_ID und SPREADSHEET_ID angegeben wird. Diese Methode wird häufig verwendet, um die Metadaten von Tabellenblättern in einer bestimmten Tabelle zu ermitteln, damit zusätzliche Vorgänge auf diese Tabellenblätter ausgerichtet werden können. Mit dem Abfrageparameter fields wird angegeben, dass nur Daten zu Tabelleneigenschaften zurückgegeben werden sollen (im Gegensatz zu Zellwertdaten oder Daten, die sich auf die gesamte Tabelle beziehen).

GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?&fields=sheets.properties

Die Antwort besteht aus einer Spreadsheet-Ressource, die ein Sheet-Objekt mit SheetProperties-Elementen enthält. Wenn ein bestimmtes Antwortfeld auf den Standardwert festgelegt ist, wird es aus der Antwort ausgelassen.

{
  "sheets": [
    {
      "properties": {
        "sheetId": SHEET_ID,
        "title": "Sheet1",
        "index": 0,
        "sheetType": "GRID",
        "gridProperties": {
          "rowCount": 100,
          "columnCount": 20,
          "frozenRowCount": 1
        }
        "tabColor": {
          "blue": 1.0
        }
      },
      ...
  ],
}