Operazioni su foglio

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

Questi esempi sono presentati sotto forma di richieste HTTP per essere indipendenti dal linguaggio. Per scoprire come implementare un aggiornamento batch in lingue diverse utilizzando le librerie client delle API 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 di lavoro. Puoi ottenere l'ID del foglio utilizzando il spreadsheets.get metodo. Gli intervalli vengono specificati utilizzando la notazione A1. Un intervallo di esempio è Sheet1!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 relativo SHEET_ID).

Di seguito è riportato il protocollo di richiesta.

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 userEnteredValue campo 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 fields in userEnteredFormat rimuovi dal foglio tutta la formattazione supportata dall'API Sheets, ma lasci inalterati i valori delle celle.

Di seguito è riportato il protocollo di richiesta.

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 spreadsheet.sheets.copyTo esempio di codice 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 SheetProperties oggetto 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 spreadsheets.batchUpdate esempio di codice mostra come utilizzare DeleteSheetRequest per eliminare un foglio specificato da SHEET_ID.

Di seguito è riportato il protocollo di richiesta.

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

Leggere i dati del foglio

Il seguente spreadsheets.get esempio di codice 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 destinate a 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 Spreadsheet risorsa, che contiene un Sheet oggetto con SheetProperties elementi. 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
        }
      },
      ...
  ],
}