Zeilen- und Spaltenvorgänge

Mit der Google Sheets API können Sie Zeilen und Spalten in Tabellen hinzufügen, entfernen und bearbeiten. Die Beispiele auf dieser Seite veranschaulichen, wie einige gängige Zeilen- und Spaltenvorgänge mit der Sheets API realisiert werden können.

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.

Spaltenbreite oder Zeilenhöhe anpassen

Das folgende Codebeispiel für spreadsheets.batchUpdate zeigt, wie Sie mit UpdateDimensionPropertiesRequest das Attribut für die Breite von Spalte A auf 160 Pixel aktualisieren. Eine zweite Anfrage aktualisiert die Zeilenhöheneigenschaft der ersten drei Zeilen auf 40 Pixel. Das Feld dimension bestimmt, ob der Vorgang auf die Spalten oder Zeilen eines Tabellenblatts angewendet wird.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateDimensionProperties": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 0,
          "endIndex": 1
        },
        "properties": {
          "pixelSize": 160
        },
        "fields": "pixelSize"
      }
    },
    {
      "updateDimensionProperties": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        },
        "properties": {
          "pixelSize": 40
        },
        "fields": "pixelSize"
      }
    }
  ]
}

Leere Zeilen oder Spalten anhängen

Im folgenden Codebeispiel für spreadsheets.batchUpdate wird gezeigt, wie Sie mit AppendDimensionRequest Zeilen und Spalten anhängen. Mit der ersten Anfrage werden drei leere Zeilen an das Ende eines Tabellenblatts angehängt, während in der zweiten eine einzelne leere Spalte angehängt wird. Das Feld dimension bestimmt, ob der Vorgang auf die Spalten oder Zeilen eines Tabellenblatts angewendet wird.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "appendDimension": {
        "sheetId": SHEET_ID,
        "dimension": "ROWS",
        "length": 3
      }
    },
    {
      "appendDimension": {
        "sheetId": SHEET_ID,
        "dimension": "COLUMNS",
        "length": 1
      }
    }
  ]
}

Spaltengröße automatisch anpassen

Im folgenden Codebeispiel für spreadsheets.batchUpdate sehen Sie, wie Sie mit AutoResizeDimensionsRequest die Größe der Spalten A:C anhand der Größe des Spalteninhalts anpassen. Das Feld dimension gibt an, dass der Vorgang auf die Spalten des Tabellenblatts angewendet wird.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "autoResizeDimensions": {
        "dimensions": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 0,
          "endIndex": 3
        }
      }
    }
  ]
}

Größe einer Zeile automatisch anpassen

Im folgenden Codebeispiel für spreadsheets.batchUpdate wird gezeigt, wie Sie mit AutoResizeDimensionsRequest die Zeilenhöhen der ersten drei Zeilen löschen. Die Zeilenhöhen wachsen dann dynamisch basierend auf dem Inhalt der Zellen in jeder Zeile. Das Feld dimension gibt an, dass der Vorgang auf die Zeilen des Tabellenblatts angewendet wird.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "autoResizeDimensions": {
        "dimensions": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        }
      }
    }
  ]
}

Zeilen oder Spalten löschen

Im folgenden Codebeispiel für spreadsheets.batchUpdate sehen Sie, wie Sie mit DeleteDimensionRequest die ersten drei Zeilen in einem Tabellenblatt löschen. Eine zweite Anfrage löscht die Spalten B:D. Mit dem Feld dimension wird festgelegt, ob der Vorgang auf die Spalten oder Zeilen eines Tabellenblatts angewendet wird.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        }
      }
    },
    {
      "deleteDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 1,
          "endIndex": 4
        }
      }
    },
  ],
}

Leere Zeile oder Spalte einfügen

Das folgende Codebeispiel für spreadsheets.batchUpdate zeigt, wie Sie mit InsertDimensionRequest Spalten oder Zeilen in einem bestimmten Index einfügen (z. B. leere Zeilen am Anfang eines Tabellenblatts voranstellen). Die erste Anfrage fügt zwei leere Spalten in Spalte C ein. Mit einer zweiten Anfrage werden drei leere Zeilen eingefügt, die bei Zeile 1 beginnen.

Mit dem Feld dimension wird festgelegt, ob der Vorgang auf die Spalten oder Zeilen eines Tabellenblatts angewendet wird.

Bei „true“ weist das Feld inheritFromBefore die Sheets API an, den neuen Spalten oder Zeilen dieselben Eigenschaften zu geben wie der vorherigen Zeile oder Spalte. Ist dies falsch, werden die Dimensionen nach den neuen Spalten oder Zeilen übernommen. inheritFromBefore kann nicht „true“ sein, wenn eine Zeile in Zeile 1 oder eine Spalte in Spalte A eingefügt wird.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "insertDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 2,
          "endIndex": 4
        },
        "inheritFromBefore": true
      }
    },
    {
      "insertDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        },
        "inheritFromBefore": false
      }
    },
  ],
}

Zeilen oder Spalten verschieben

Im folgenden Codebeispiel für spreadsheets.batchUpdate sehen Sie, wie Sie mit MoveDimensionRequest Spalte A an Position von Spalte D verschieben. Durch eine zweite Anfrage werden die Zeilen 5–10 an die Position von Zeile 20 verschoben.

Mit dem Feld dimension wird festgelegt, ob der Vorgang auf die Spalten oder Zeilen eines Tabellenblatts angewendet wird. Das Feld destinationIndex bestimmt mithilfe eines nullbasierten Startindexes, wohin die Quelldaten verschoben werden sollen.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "moveDimension": {
        "source": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 0,
          "endIndex": 1
        },
        "destinationIndex": 3
      }
    },
    {
      "moveDimension": {
        "source": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 4,
          "endIndex": 10
        },
        "destinationIndex": 19
      }
    },
  ],
}