Pemformatan dasar

Google Sheets API memungkinkan Anda untuk memperbarui format sel dan rentang dalam {i>spreadsheet<i}. Contoh di halaman ini menggambarkan bagaimana beberapa dapat dilakukan dengan Sheets API. Anda dapat temukan lebih banyak contoh format bersyarat di tab Bersyarat halaman resep format.

Saat memperbarui spreadsheet, beberapa jenis permintaan mungkin menampilkan respons. Ini ditampilkan dalam {i>array<i}, dengan setiap respons menempati indeks yang sama dengan terhadap permintaan terkait. Beberapa permintaan tidak memiliki respons, dan untuk yang kosong. Struktur respons untuk contoh-contoh ini dapat ditemukan di spreadsheets.batchUpdate

Contoh ini disajikan dalam bentuk permintaan HTTP untuk memilih bahasa netral. Untuk mempelajari cara mengimplementasikan update secara batch dalam berbagai bahasa menggunakan library klien Google API, lihat Memperbarui di spreadsheet.

Dalam contoh ini, placeholder SPREADSHEET_ID dan SHEET_ID menunjukkan di mana Anda akan memberikan ID tersebut. Anda dapat menemukan spreadsheet ID di URL spreadsheet. Anda bisa mendapatkan sheet ID dengan menggunakan Metode spreadsheets.get. Tujuan rentang ditentukan menggunakan notasi A1. Channel contohnya adalah Sheet1!A1:D5.

Dalam video di atas, Anda belajar cara memformat sel {i>spreadsheet<i} dengan berbagai cara, termasuk: membuat baris dibekukan, menebalkan sel, menerapkan mata uang pemformatan, melakukan validasi sel, dan membatasi nilai sel.

Edit batas sel

Hal berikut spreadsheets.batchUpdate contoh kode menunjukkan cara menggunakan UpdateBordersRequest untuk memberi setiap sel dalam rentang A1:F10 garis batas atas dan bawah berwarna biru putus-putus. Tujuan Kolom innerHorizontal membuat batas horizontal di bagian dalam rentang. Menghilangkan bidang akan menyebabkan {i>border<i} hanya ditambahkan ke bagian atas dan di bagian bawah seluruh rentang.

Tabel berukuran 3 kali 3 dengan setiap sel memiliki batas atas dan bawah berwarna biru putus-putus.
Gambar 1. Format setiap sel dengan batas atas dan bawah berwarna biru putus-putus dalam sheet.

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

Hal berikut spreadsheets.batchUpdate contoh kode menunjukkan cara menggunakan RepeatCellRequest untuk memformat baris {i>header<i} dalam sebuah {i>sheet<i}. Permintaan pertama memperbarui warna teks, warna latar belakang, ukuran font teks, dan justifikasi teks, serta membuat teks tebal. Menghapus indeks kolom di kolom range akan menyebabkan seluruh baris yang akan diformat. Permintaan kedua menyesuaikan properti sheet sehingga baris tajuk dibekukan.

Tabel berukuran 3 kali 3 dengan baris header berformat dalam sheet.
Gambar 2. Memformat baris header dalam sheet.

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

Hal berikut spreadsheets.batchUpdate contoh kode menunjukkan cara menggunakan MergeCellsRequest untuk menggabungkan sel. Permintaan pertama menggabungkan rentang A1:B2 menjadi satu sel. Tujuan permintaan kedua menggabungkan kolom di A3:B6, sementara membiarkan baris terpisah.

Tabel berukuran 3 kali 3 dengan sel gabungan dalam satu sheet.
Gambar 3. Menggabungkan sel dalam sheet.

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

Hal berikut spreadsheets.batchUpdate contoh kode menunjukkan cara menggunakan RepeatCellRequest untuk memperbarui sel agar memiliki format khusus tanggal dan angka. 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 memberikan format angka kustom pada sel-sel di B1:B10 #,##0.0000, yang menunjukkan bahwa angka harus dikelompokkan dengan koma pemisah, bahwa harus ada 4 digit setelah desimal, dan semua kecuali satu angka nol di depan harus dimasukkan. Misalnya, angka "3.14" dirender sebagai "3.1400", sedangkan "12345.12345" dirender sebagai "12,345.1235".

Tabel 3 kali 3 dengan format tanggal dan angka kustom dalam sheet.
Gambar 4. Perbarui sel agar memiliki format tanggal dan angka kustom dalam sheet.

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"
      }
    }
  ]
}