Google Sheets API memungkinkan Anda memanipulasi data dalam spreadsheet dengan berbagai cara. Sebagian besar fungsi yang tersedia bagi pengguna yang menggunakan UI Spreadsheet juga dapat dilakukan dengan Sheets API. Contoh di halaman ini menggambarkan cara Anda dapat melakukan beberapa operasi spreadsheet umum dengan Sheets API.
Contoh ini ditampilkan dalam bentuk permintaan HTTP agar bersifat netral bahasa. Untuk mempelajari cara menerapkan update batch dalam berbagai bahasa menggunakan library klien Google API, lihat Memperbarui spreadsheet.
Dalam contoh ini, placeholder SPREADSHEET_ID
dan SHEET_ID
menunjukkan tempat Anda akan memberikan ID tersebut. Anda dapat menemukan ID spreadsheet di URL spreadsheet. Anda bisa mendapatkan
ID sheet menggunakan
metode spreadsheets.get
. Rentang ditentukan menggunakan notasi A1. Contoh
rentang adalah Sheet1!A1:D5.
Menerapkan validasi data ke rentang
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
SetDataValidationRequest
untuk menerapkan aturan validasi data, dengan "value > 5", ke setiap sel dalam rentang A1:D10.
Protokol permintaan ditampilkan di bawah.
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
}
}
}
]
}
Menyalin & menempel format sel
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
CopyPasteRequest
untuk menyalin format hanya dalam rentang A1:D10 dan menempelkannya ke rentang F1:I10
di sheet yang sama. Metode ini menggunakan
enum PasteType
dengan PASTE_FORMAT
untuk menempelkan pemformatan dan validasi data saja. Nilai
asli di A1:D10 tetap tidak berubah.
Protokol permintaan ditampilkan di bawah.
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" } } ] }
Potong & tempel sel
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
CutPasteRequest
.
Fungsi ini memotong rentang A1:D10 dan menggunakan
enum PasteType
dengan PASTE_NORMAL
untuk menempelkan nilai, formula, pemformatan, dan penggabungan ke
rentang F1:I10 di sheet yang sama. Konten sel rentang sumber asli
akan dihapus.
Protokol permintaan ditampilkan di bawah.
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" } } ] }
Mengulangi formula di seluruh rentang
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
RepeatCellRequest
untuk menyalin formula =FLOOR(A1*PI())
ke rentang B1:D10. Rentang formula
akan otomatis bertambah untuk setiap baris dan kolom dalam rentang, dimulai dengan
sel kiri atas. Misalnya, sel B1 memiliki formula =FLOOR(A1*PI())
, sedangkan
sel D6 memiliki formula =FLOOR(C6*PI())
.
Protokol permintaan ditampilkan di bawah.
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"
}
}
]
}
Mengurutkan rentang dengan beberapa spesifikasi pengurutan
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
SortRangeRequest
untuk mengurutkan rentang A1:D10, pertama menurut kolom B dalam urutan menaik, lalu menurut kolom C
dalam urutan menurun, lalu menurut kolom D dalam urutan menurun.
Protokol permintaan ditampilkan di bawah.
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"
}
]
}
}
]
}