La API de Google Sheets te permite crear, modificar y borrar o rangos. Los ejemplos de esta página ilustran cómo puedes lograr algunas Operaciones de Hojas de cálculo con la API de Hojas de cálculo
Estos ejemplos se presentan en forma de solicitudes HTTP como lenguaje neutrales. Para aprender a implementar una actualización por lotes en diferentes idiomas con las bibliotecas cliente de la API de Google, consulta Actualización hojas de cálculo.
En estos ejemplos, los marcadores de posición SPREADSHEET_ID
y SHEET_ID
se indica dónde se deben proporcionar esos ID. Puedes encontrar la hoja de cálculo
ID en la URL de la hoja de cálculo. Puedes obtener
el ID de la hoja mediante el
spreadsheets.get
. El
los rangos se especifican con la notación A1. Los
el rango de ejemplo es Hoja1!A1:D5.
Además, los marcadores de posición NAMED_RANGE_ID
y PROTECTED_RANGE_ID
proporcionan los ID de los rangos con nombre y protegidos. Los operadores namedRangeId
y
Las protectedRangeId
se usan cuando se hacen solicitudes para actualizar o borrar el
o en rangos asociados. El ID se muestra en la respuesta a una API de Hojas de cálculo
que cree un rango con nombre o protegido. Puedes obtener los IDs de las cuentas
con el valor
spreadsheets.get
, en
el
Spreadsheet
cuerpo de respuesta.
Agregar rangos con nombre o protegidos
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar 2 objetos de solicitud. En la primera, se usa
AddNamedRangeRequest
para asignar al rango A1:E3 el nombre “Recuentos”. En el segundo, se usa
AddProtectedRangeRequest
para adjuntar una protección de nivel de advertencia al rango A4:E4. Este nivel de protección
sigue permitiendo que se editen las celdas dentro del rango, pero muestra una advertencia antes
antes de hacer el cambio.
Estas solicitudes devuelven un
AddNamedRangeResponse
y un
AddProtectedRangeResponse
:
con los IDs y las propiedades de los rangos.
El protocolo de solicitud se muestra a continuación.
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 } } } ] }
Eliminar rangos con nombre o protegidos
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar 2 objetos de solicitud. En la primera, se usa
DeleteNamedRangeRequest
para borrar un rango con nombre existente usando NAMED_RANGE_ID
de un
llamada a la API anterior. En el segundo, se usa
DeleteProtectedRangeRequest
para borrar una protección de rango existente con el método PROTECTED_RANGE_ID
de una llamada a la API anterior.
El protocolo de solicitud se muestra a continuación.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "deleteNamedRange": { "namedRangeId": "NAMED_RANGE_ID
", } }, { "deleteProtectedRange": { "protectedRangeId":PROTECTED_RANGE_ID
, } } ] }
Actualizar rangos con nombre o protección
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar 2 objetos de solicitud. En la primera, se usa
UpdateNamedRangeRequest
para actualizar el nombre de un rango con nombre existente a "InitialCounts" mediante el parámetro NAMED_RANGE_ID
de una llamada a la API anterior. En el segundo, se usa
UpdateProtectedRangeRequest
para actualizar un rango protegido existente de modo que ahora proteja al mismo rango
del rango de destino de la ruta. El
Método Editors
permite que solo los usuarios de la lista editen esas celdas. Esta solicitud usa NAMED_RANGE_ID
.
y PROTECTED_RANGE_ID
de llamadas a la API anteriores.
El protocolo de solicitud se muestra a continuación.
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" } } ] }