Google Sheets API memungkinkan Anda untuk mengupdate format sel dan rentang dalam spreadsheet. Contoh di halaman ini mengilustrasikan bagaimana beberapa operasi pemformatan umum dapat dilakukan dengan Sheets API. Anda dapat menemukan contoh format bersyarat lainnya di halaman urutan langkah Pemformatan bersyarat.
Saat memperbarui spreadsheet, beberapa jenis permintaan mungkin menampilkan respons.
Respons ini ditampilkan dalam array, dengan setiap respons menempati indeks yang sama dengan
permintaan terkait. Beberapa permintaan tidak memiliki respons dan untuk permintaan tersebut
responsnya kosong. Struktur respons untuk contoh ini dapat ditemukan di
spreadsheets.batchUpdate
.
Contoh ini disajikan dalam bentuk permintaan HTTP agar tidak menggunakan bahasa. Untuk mempelajari cara mengimplementasikan update secara batch dalam berbagai bahasa menggunakan library klien Google API, lihat Mengupdate 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
rentangnya adalah Sheet1!A1:D5.
Dalam video di atas, Anda akan mempelajari cara memformat sel spreadsheet dengan berbagai cara, termasuk: membuat baris yang dibekukan, menebalkan sel, menerapkan pemformatan mata uang, melakukan validasi sel, dan membatasi nilai sel.
Edit batas sel
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
UpdateBordersRequest
untuk memberi setiap sel dalam rentang A1:F10 garis batas atas dan bawah berwarna biru putus-putus. Kolom
innerHorizontal
membuat batas horizontal di bagian dalam rentang.
Menghapus kolom akan menyebabkan batas hanya ditambahkan ke bagian atas dan
bawah seluruh rentang.
Protokol permintaan ditampilkan di bawah ini.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateBorders": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 6 }, "top": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "bottom": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "innerHorizontal": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, } } ] }
Memformat baris header
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
RepeatCellRequest
untuk memformat baris header dalam sheet. Permintaan pertama mengupdate warna teks,
warna latar belakang, ukuran font teks, dan justifikasi teks, serta membuat
teks menjadi tebal. Menghapus indeks kolom di kolom range
akan menyebabkan seluruh
baris diformat. Permintaan kedua menyesuaikan properti sheet sehingga
baris header dibekukan.
Protokol permintaan ditampilkan di bawah ini.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 1 }, "cell": { "userEnteredFormat": { "backgroundColor": { "red": 0.0, "green": 0.0, "blue": 0.0 }, "horizontalAlignment" : "CENTER", "textFormat": { "foregroundColor": { "red": 1.0, "green": 1.0, "blue": 1.0 }, "fontSize": 12, "bold": true } } }, "fields": "userEnteredFormat(backgroundColor,textFormat,horizontalAlignment)" } }, { "updateSheetProperties": { "properties": { "sheetId": SHEET_ID, "gridProperties": { "frozenRowCount": 1 } }, "fields": "gridProperties.frozenRowCount" } } ] }
Gabungkan sel
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
MergeCellsRequest
untuk menggabungkan sel. Permintaan pertama menggabungkan rentang A1:B2 menjadi satu sel. Permintaan kedua menggabungkan kolom di A3:B6, sementara membiarkan baris-baris terpisah.
Protokol permintaan ditampilkan di bawah ini.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 2, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_ALL" } }, { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 2, "endRowIndex": 6, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_COLUMNS" } }, ] }
Menetapkan format datetime atau desimal kustom untuk rentang
Contoh kode
spreadsheets.batchUpdate
berikut menunjukkan cara menggunakan
RepeatCellRequest
untuk memperbarui sel agar memiliki format tanggal dan waktu kustom. Permintaan pertama
memberikan format tanggal dan waktu kustom hh:mm:ss am/pm,
ddd mmm dd yyyy
ke sel dalam rentang A1:A10. Contoh tanggal dan waktu dalam format ini adalah: "02:05:07 PM, Sun Apr
03 2016".
Permintaan kedua memberi sel-sel dalam B1:B10 format angka kustom #,##0.0000
, yang menunjukkan bahwa angka harus dikelompokkan dengan pemisah koma, harus ada 4 digit setelah desimal, dan semua kecuali satu nol di depan harus dihapus. Misalnya, angka "3.14" dirender
sebagai "3.1400", sedangkan "12345.12345" dirender sebagai "12,345.1235".
Protokol permintaan ditampilkan di bawah ini.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 1 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "DATE", "pattern": "hh:mm:ss am/pm, ddd mmm dd yyyy" } } }, "fields": "userEnteredFormat.numberFormat" } }, { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 1, "endColumnIndex": 2 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "NUMBER", "pattern": "#,##0.0000" } } }, "fields": "userEnteredFormat.numberFormat" } } ] }