Google Sheets API memungkinkan Anda membuat, mengubah, dan menghapus rentang bernama atau terlindungi. Contoh di halaman ini menggambarkan cara Anda dapat melakukan beberapa operasi Spreadsheet umum dengan Sheets API.
Contoh ini disajikan dalam bentuk permintaan HTTP agar netral terhadap 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.
Selain itu, placeholder NAMED_RANGE_ID
dan PROTECTED_RANGE_ID
memberikan ID untuk rentang bernama dan terlindungi. namedRangeId
dan
protectedRangeId
digunakan saat membuat permintaan untuk memperbarui atau menghapus
rentang terkait. ID ditampilkan dalam respons terhadap permintaan Sheets API yang membuat rentang bernama atau terlindungi. Anda bisa mendapatkan ID rentang yang ada dengan metode
spreadsheets.get
, di
isi respons
Spreadsheet
.
Menambahkan rentang bernama atau dilindungi
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan 2 objek permintaan. Yang pertama menggunakan
AddNamedRangeRequest
untuk menetapkan nama "Counts" pada rentang A1:E3. Yang kedua menggunakan
AddProtectedRangeRequest
untuk melampirkan perlindungan tingkat peringatan ke rentang A4:E4. Perlindungan tingkat ini tetap memungkinkan sel dalam rentang diedit, tetapi akan menampilkan peringatan sebelum perubahan dilakukan.
Permintaan ini menampilkan
AddNamedRangeResponse
dan
AddProtectedRangeResponse
,
yang berisi ID dan properti rentang.
Protokol permintaan ditampilkan di bawah.
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 } } } ] }
Menghapus rentang bernama atau dilindungi
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan 2 objek permintaan. Yang pertama menggunakan
DeleteNamedRangeRequest
untuk menghapus rentang bernama yang ada, menggunakan NAMED_RANGE_ID
dari
panggilan API sebelumnya. Yang kedua menggunakan
DeleteProtectedRangeRequest
untuk menghapus perlindungan rentang yang ada, menggunakan PROTECTED_RANGE_ID
dari panggilan API sebelumnya.
Protokol permintaan ditampilkan di bawah.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "deleteNamedRange": { "namedRangeId": "NAMED_RANGE_ID
", } }, { "deleteProtectedRange": { "protectedRangeId":PROTECTED_RANGE_ID
, } } ] }
Memperbarui rentang bernama atau terlindungi
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan 2 objek permintaan. Yang pertama menggunakan
UpdateNamedRangeRequest
untuk memperbarui nama rentang bernama yang ada menjadi "InitialCounts", menggunakan NAMED_RANGE_ID
dari panggilan API sebelumnya. Yang kedua menggunakan
UpdateProtectedRangeRequest
untuk memperbarui rentang terlindungi yang ada sehingga kini melindungi rentang
bernama sama. Metode
Editors
hanya mengizinkan pengguna yang tercantum untuk mengedit sel tersebut. Permintaan ini menggunakan NAMED_RANGE_ID
dan PROTECTED_RANGE_ID
dari panggilan API sebelumnya.
Protokol permintaan ditampilkan di bawah.
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" } } ] }