Operazioni su foglio

L'API Google Sheets ti consente di creare, cancellare, copiare ed eliminare fogli, nonché controllarne le proprietà. Gli esempi in questa pagina illustrano come puoi eseguire alcune operazioni comuni di Fogli con l'API Sheets.

Questi esempi sono presentati sotto forma di richieste HTTP per essere indipendenti dalla lingua. Per scoprire come implementare un aggiornamento batch in diverse lingue utilizzando le librerie client delle API di Google, consulta Aggiornare i fogli di lavoro.

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

Aggiungere un foglio

Il seguente spreadsheets.batchUpdate esempio di codice mostra come utilizzare AddSheetRequest per aggiungere un foglio a un foglio di lavoro, impostando anche il titolo, le dimensioni della griglia e il colore della scheda.

La risposta è costituita da un AddSheetResponse, che contiene un oggetto con le proprietà del foglio creato (ad esempio il SHEET_ID).

Il protocollo di richiesta è mostrato di seguito.

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

Cancellare tutti i valori di un foglio mantenendo i formati

Il seguente spreadsheets.batchUpdate esempio di codice mostra come utilizzare UpdateCellsRequest per rimuovere tutti i valori da un foglio lasciando inalterata la formattazione.

La specifica del campo userEnteredValue senza un valore corrispondente viene interpretata come un'istruzione per cancellare i valori nell'intervallo. Questa impostazione può essere utilizzata anche con altri campi. Ad esempio, se modifichi il valore di fields in userEnteredFormat, viene rimossa tutta la formattazione supportata dall'API Sheets dal foglio, ma i valori delle celle rimangono invariati.

Il protocollo di richiesta è mostrato di seguito.

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

Copiare un foglio da un foglio di lavoro a un altro

Il seguente esempio di codice spreadsheet.sheets.copyTo mostra come copiare un singolo foglio specificato da SHEET_ID da un foglio di lavoro a un altro.

La variabile TARGET_SPREADSHEET_ID nel corpo della richiesta specifica il foglio di lavoro di destinazione. La copia conserva tutti i valori, la formattazione, le formule e le altre proprietà dell'originale. Il titolo del foglio copiato è impostato su "Copia di [titolo del foglio originale]".

La risposta è costituita da un oggetto SheetProperties che descrive le proprietà del foglio creato.

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

Eliminare un foglio

Il seguente esempio di codice spreadsheets.batchUpdate mostra come utilizzare DeleteSheetRequest per eliminare un foglio specificato da SHEET_ID.

Il protocollo di richiesta è mostrato di seguito.

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

Leggere i dati del foglio

Il seguente esempio di codice spreadsheets.get mostra come ottenere le informazioni sulle proprietà del foglio da un foglio di lavoro, specificato da SHEET_ID e SPREADSHEET_ID. Questo metodo viene spesso utilizzato per determinare i metadati dei fogli all'interno di un foglio di lavoro specifico, in modo che le operazioni aggiuntive possano essere eseguite su questi fogli. Il parametro di query fields specifica che devono essere restituiti solo i dati delle proprietà del foglio (anziché i dati dei valori delle celle o i dati relativi all'intero foglio di lavoro).

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

La risposta è costituita da una risorsa Spreadsheet, che contiene un oggetto Sheet con elementi SheetProperties. Se un determinato campo di risposta è impostato sul valore predefinito, viene omesso dalla risposta.

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