Benannte und geschützte Bereiche

Mit der Google Sheets API können Sie benannte oder Bereiche. Die Beispiele auf dieser Seite veranschaulichen, wie Sie einige gängige Google Tabellen-Vorgä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.

Außerdem werden die Platzhalter NAMED_RANGE_ID und PROTECTED_RANGE_ID geben die IDs für die benannten und geschützten Bereiche an. Die namedRangeId und protectedRangeId werden bei Anfragen zum Aktualisieren oder Löschen des zusammenhängenden Bereichen. Die ID wird in der Antwort auf eine Sheets API zurückgegeben. -Anfrage, die einen benannten oder geschützten Bereich erstellt. Sie können die IDs vorhandener Bereiche mit den Methode spreadsheets.get in die Spreadsheet Antworttext.

Benannte oder geschützte Bereiche hinzufügen

Die folgenden spreadsheets.batchUpdate Das Codebeispiel zeigt, wie zwei Anfrageobjekte verwendet werden. Bei der ersten Option wird die Methode AddNamedRangeRequest um dem Bereich A1:E3 den Namen „Anzahl“ zuzuweisen. Im zweiten AddProtectedRangeRequest , um dem Bereich A4:E4 eine Schutzmaßnahme auf Warnstufe hinzuzufügen. Dieses Schutzniveau das Bearbeiten von Zellen innerhalb des Bereichs weiterhin, aber davor wird eine Warnung angezeigt. die die Änderung vornimmt.

Bei diesen Anfragen wird ein AddNamedRangeResponse und AddProtectedRangeResponse das die Bereichs-IDs und Eigenschaften enthält.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "addNamedRange": {
        "namedRange": {
          "name": "Counts",
          "range": {
            "sheetId": SHEET_ID,
            "startRowIndex": 0,
            "endRowIndex": 3,
            "startColumnIndex": 0,
            "endColumnIndex": 5,
          },
        }
      }
    },
    {
      "addProtectedRange": {
        "protectedRange": {
          "range": {
            "sheetId": SHEET_ID,
            "startRowIndex": 3,
            "endRowIndex": 4,
            "startColumnIndex": 0,
            "endColumnIndex": 5,
          },
          "description": "Protecting total row",
          "warningOnly": true
        }
      }
    }
  ]
}

Benannte oder geschützte Bereiche löschen

Die folgenden spreadsheets.batchUpdate Das Codebeispiel zeigt, wie zwei Anfrageobjekte verwendet werden. Bei der ersten Option wird die Methode DeleteNamedRangeRequest einen vorhandenen benannten Bereich löschen, indem Sie die NAMED_RANGE_ID aus einem vorherigen API-Aufrufs. Im zweiten DeleteProtectedRangeRequest , um einen vorhandenen Bereichsschutz mithilfe der PROTECTED_RANGE_ID zu löschen aus einem vorherigen API-Aufruf.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteNamedRange": {
          "namedRangeId": "NAMED_RANGE_ID",
      }
    },
    {
      "deleteProtectedRange": {
        "protectedRangeId": PROTECTED_RANGE_ID,
      }
    }
  ]
}

Benannte oder geschützte Bereiche aktualisieren

Die folgenden spreadsheets.batchUpdate Das Codebeispiel zeigt, wie zwei Anfrageobjekte verwendet werden. Bei der ersten Option wird die Methode UpdateNamedRangeRequest Um den Namen eines vorhandenen benannten Bereichs in "InitialCounts" zu ändern, verwenden Sie die NAMED_RANGE_ID aus einem vorherigen API-Aufruf. Im zweiten UpdateProtectedRangeRequest um einen vorhandenen geschützten Bereich zu aktualisieren, Bereich. Die Methode Editors ermöglicht nur den aufgelisteten Nutzern, diese Zellen zu bearbeiten. Diese Anfrage verwendet die NAMED_RANGE_ID und PROTECTED_RANGE_ID aus vorherigen API-Aufrufen.

Das Anfrageprotokoll ist unten zu sehen.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateNamedRange": {
        "namedRange": {
          "namedRangeId": NAMED_RANGE_ID,
          "name": "InitialCounts",
        },
        "fields": "name",
      }
    },
    {
      "updateProtectedRange": {
        "protectedRange": {
          "protectedRangeId": PROTECTED_RANGE_ID,
          "namedRangeId": NAMED_RANGE_ID,
          "warningOnly": false,
          "editors": {
            "users": [
              "charlie@example.com",
              "sasha@example.com"
            ]
          }
        },
        "fields": "namedRangeId,warningOnly,editors"
      }
    }
  ]
}