Intervalli protetti e con nome

L'API Fogli Google consente di creare, modificare ed eliminare elementi denominati o protetti intervalli di tempo. Gli esempi in questa pagina illustrano come ottenere alcune Operazioni di Fogli con l'API Fogli.

Questi esempi sono presentati sotto forma di richieste HTTP per neutri. Per scoprire come implementare un aggiornamento batch in lingue diverse utilizzando le librerie client delle API di Google, consulta l'articolo Aggiornamento fogli di lavoro.

In questi esempi, i segnaposto SPREADSHEET_ID e SHEET_ID indica dove fornire questi ID. Puoi trovare il foglio di lavoro ID nell'URL del foglio di lavoro. Puoi ottenere l'ID foglio utilizzando la proprietà spreadsheets.get. La vengono specificati utilizzando la notazione A1. Un di esempio è Foglio1!A1:D5.

Inoltre, i segnaposto NAMED_RANGE_ID e PROTECTED_RANGE_ID fornisce gli ID per gli intervalli denominati e protetti. Le namedRangeId e protectedRangeId vengono utilizzati quando si effettuano richieste di aggiornamento o eliminazione e gli intervalli associati. L'ID viene restituito nella risposta a un'API Fogli. che crea un intervallo denominato o protetto. Puoi ottenere gli ID di quelli esistenti intervalli con Metodo spreadsheets.get, nel il Spreadsheet corpo della risposta.

Aggiungi intervalli denominati o protetti

Le seguenti spreadsheets.batchUpdate l'esempio di codice mostra come utilizzare due oggetti di richiesta. Il primo utilizza il parametro AddNamedRangeRequest per assegnare all'intervallo A1:E3 il nome "Counts". Il secondo utilizza il parametro AddProtectedRangeRequest per applicare una protezione a livello di avviso nell'intervallo A4:E4. Questa protezione di livello consente comunque di modificare le celle comprese nell'intervallo, ma richiede un avviso prima per apportare la modifica.

Queste richieste restituiscono un AddNamedRangeResponse e un AddProtectedRangeResponse, contenente gli ID e le proprietà di intervallo.

Il protocollo di richiesta è mostrato di seguito.

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

Elimina intervalli denominati o protetti

Le seguenti spreadsheets.batchUpdate l'esempio di codice mostra come utilizzare due oggetti di richiesta. Il primo utilizza il parametro DeleteNamedRangeRequest per eliminare un intervallo denominato esistente, utilizzando NAMED_RANGE_ID da un chiamata API precedente. Il secondo utilizza il parametro DeleteProtectedRangeRequest per eliminare una protezione intervallo esistente, utilizzando PROTECTED_RANGE_ID da una precedente chiamata API.

Il protocollo di richiesta è mostrato di seguito.

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

Aggiorna intervalli denominati o protetti

Le seguenti spreadsheets.batchUpdate l'esempio di codice mostra come utilizzare due oggetti di richiesta. Il primo utilizza il parametro UpdateNamedRangeRequest per aggiornare il nome di un intervallo denominato esistente in "InitialCounts", utilizzando NAMED_RANGE_ID da una precedente chiamata API. Il secondo utilizza il parametro UpdateProtectedRangeRequest per aggiornare un intervallo protetto esistente in modo che ora protegga lo stesso intervallo. La Metodo Editors consente solo agli utenti elencati di modificare quelle celle. Questa richiesta utilizza NAMED_RANGE_ID e PROTECTED_RANGE_ID dalle chiamate API precedenti.

Il protocollo di richiesta è mostrato di seguito.

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