Datenvorgänge

Mit der Google Sheets API können Sie Daten in Tabellen in verschiedenen . Die meisten Funktionen stehen Nutzern zur Verfügung, die mit dem Die Benutzeroberfläche von Google Tabellen kann auch mit der Sheets API Die Beispiele auf dieser Seite veranschaulichen, wie Sie einige gängige Tabellenvorgänge mit der Sheets API.

Diese Beispiele werden in Form von HTTP-Anfragen neutral sein. Um zu erfahren, wie Sie eine Batch-Aktualisierung in verschiedenen Sprachen mithilfe der Google API-Clientbibliotheken, siehe Aktualisieren Tabellen.

In diesen Beispielen haben die Platzhalter SPREADSHEET_ID und SHEET_ID gibt an, wo Sie diese IDs angeben würden. Sie finden die Tabelle ID in der Tabellen-URL. Sie erhalten Tabellenblatt-ID mithilfe des spreadsheets.get-Methode. Die Bereiche werden in der A1-Notation angegeben. Eine Beispielbereich ist Sheet1!A1:D5.

Datenvalidierung auf einen Bereich anwenden

Die folgenden spreadsheets.batchUpdate wird in einem Codebeispiel gezeigt, wie Sie SetDataValidationRequest um eine Datenvalidierungsregel anzuwenden, wobei "value > 5" in jede Zelle im Bereich A1:D10 ein.

Das Anfrageprotokoll ist unten zu sehen.

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
        }
      }
    }
  ]
}

Kopieren und Zellenformatierung einfügen

Die folgenden spreadsheets.batchUpdate wird gezeigt, wie Sie mit der CopyPasteRequest , um die Formatierung nur im Bereich A1:D10 zu kopieren und in den Bereich F1:I10 einzufügen. in derselben Tabelle. Die Methode verwendet die Methode PasteType-Enum mit PASTE_FORMAT, um nur die Formatierung und Datenvalidierung einzufügen. Die Die ursprünglichen Werte in A1:D10 bleiben unverändert.

Das Anfrageprotokoll ist unten zu sehen.

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"
      }
    }
  ]
}

Ausschneiden und Zellen einfügen

Die folgenden spreadsheets.batchUpdate wird in einem Codebeispiel gezeigt, wie Sie CutPasteRequest Es schneidet den Bereich A1:D10 ab und verwendet PasteType-Enum mit PASTE_NORMAL, um die Werte, Formeln, Formatierungen und Zusammenführungen F1:I10-Bereich im selben Tabellenblatt. Der ursprüngliche Quellbereich-Zelleninhalt ist entfernt.

Das Anfrageprotokoll ist unten zu sehen.

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 innerhalb eines Bereichs wiederholen

Die folgenden spreadsheets.batchUpdate wird in einem Codebeispiel gezeigt, wie Sie RepeatCellRequest um die Formel =FLOOR(A1*PI()) in den Bereich B1:D10 zu kopieren. Der Bereich der Formel wird automatisch für jede Zeile und Spalte im Bereich erhöht, beginnend mit in der linken oberen Zelle. So enthält Zelle B1 beispielsweise die Formel =FLOOR(A1*PI()), während Zelle D6 enthält die Formel =FLOOR(C6*PI()).

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": 1,
          "endColumnIndex": 4
        },
        "cell": {
          "userEnteredValue": {
              "formulaValue": "=FLOOR(A1*PI())"
          }
        },
        "fields": "userEnteredValue"
      }
    }
  ]
}

Einen Bereich mit mehreren Sortierspezifikationen sortieren

Die folgenden spreadsheets.batchUpdate wird in einem Codebeispiel gezeigt, wie Sie SortRangeRequest um den Bereich A1:D10 zu sortieren, zuerst nach Spalte B in aufsteigender Reihenfolge, dann nach Spalte C in absteigender Reihenfolge, dann nach Spalte D in absteigender Reihenfolge.

Das Anfrageprotokoll ist unten zu sehen.

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"
          }
        ]
      }
    }
  ]
}