La API de Google Sheets te permite manipular los datos de las hojas de cálculo en varios maneras. La mayor parte de la funcionalidad está disponible para los usuarios que trabajan con el La IU de Hojas de cálculo también permite realizar API de Hojas de cálculo. Los ejemplos de esta página ilustran cómo puedes lograr algunas operaciones comunes 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.
Aplicar la validación de datos a un rango
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar el
SetDataValidationRequest
para aplicar una regla de validación de datos, donde "valor > 5", a cada celda del rango A1:D10.
El protocolo de solicitud se muestra a continuación.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"setDataValidation": {
"range": {
"sheetId": SHEET_ID
,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"rule": {
"condition": {
"type": "NUMBER_GREATER",
"values": [
{
"userEnteredValue": "5"
}
]
},
"inputMessage": "Value must be > 5",
"strict": true
}
}
}
]
}
Copiar y pegar formato de celda
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar el
CopyPasteRequest
para copiar el formato solo en el rango A1:D10 y pegarlo en el rango F1:I10
en la misma hoja. El método usa la
Enumeración PasteType
con PASTE_FORMAT
para pegar solo el formato y la validación de datos. El
los valores originales en A1:D10 no se modifican.
El protocolo de solicitud se muestra a continuación.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "copyPaste": { "source": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 4 }, "destination": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 5, "endColumnIndex": 9 }, "pasteType": "PASTE_FORMAT", "pasteOrientation": "NORMAL" } } ] }
Cortar y pegar celdas
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar el
CutPasteRequest
Corta el rango A1:D10 y usa el
Enumeración PasteType
con PASTE_NORMAL
para pegar sus valores, fórmulas, formato y combinaciones en la
F1:I10 en la misma hoja. El contenido original de las celdas del rango de origen es
o quitarse.
El protocolo de solicitud se muestra a continuación.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "cutPaste": { "source": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 4 }, "destination": { "sheetId":SHEET_ID
, "rowIndex": 0, "columnIndex": 5 }, "pasteType": "PASTE_NORMAL" } } ] }
Repetir una fórmula en un rango
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar el
RepeatCellRequest
para copiar la fórmula =FLOOR(A1*PI())
al rango B1:D10. El rango de la fórmula
aumenta automáticamente para cada fila y columna del rango, empezando por el
celda superior izquierda. Por ejemplo, la celda B1 tiene la fórmula =FLOOR(A1*PI())
, mientras que
la celda D6 tiene la fórmula =FLOOR(C6*PI())
.
El protocolo de solicitud se muestra a continuación.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"repeatCell": {
"range": {
"sheetId": SHEET_ID
,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 1,
"endColumnIndex": 4
},
"cell": {
"userEnteredValue": {
"formulaValue": "=FLOOR(A1*PI())"
}
},
"fields": "userEnteredValue"
}
}
]
}
Ordenar un rango con varias especificaciones de orden
Lo siguiente
spreadsheets.batchUpdate
de muestra de código muestra cómo usar el
SortRangeRequest
para ordenar el rango A1:D10, primero por la columna B en orden ascendente y, luego, por la columna C
en orden descendente, luego por la columna D en orden descendente.
El protocolo de solicitud se muestra a continuación.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"sortRange": {
"range": {
"sheetId": SHEET_ID
,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"sortSpecs": [
{
"dimensionIndex": 1,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 2,
"sortOrder": "DESCENDING"
},
{
"dimensionIndex": 3,
"sortOrder": "DESCENDING"
}
]
}
}
]
}