Temel biçimlendirme

Google Sheets API'yi kullanarak elektronik tablolardaki hücrelerin ve aralıkların biçimlendirmesini güncelleyebilirsiniz. Bu sayfadaki örnekler, bazı yaygın biçimlendirme işlemlerinin Sheets API ile nasıl yapılabileceğini gösterir. Daha fazla koşullu biçimlendirme örneğini Koşullu biçimlendirme tarifi sayfasında bulabilirsiniz.

Bir e-tablo güncellenirken bazı istekler yanıt döndürebilir. Bunlar, her yanıtın ilgili istekle aynı dizini kullandığı bir dizide döndürülür. Bazı isteklerin yanıtı yoktur ve bu istekler için yanıt boş olur. Bu örneklerin yanıt yapısını spreadsheets.batchUpdate bölümünde bulabilirsiniz.

Bu örnekler, dilden bağımsız olması için HTTP istekleri şeklinde sunulur. Google API istemci kitaplıklarını kullanarak farklı dillerde toplu güncelleme yapmayı öğrenmek için E-tabloları güncelleme başlıklı makaleye bakın.

Bu örneklerde, SPREADSHEET_ID ve SHEET_ID yer tutucuları, bu kimlikleri nerede sağlayacağınızı gösterir. E-tablo kimliğini e-tablo URL'sinde bulabilirsiniz. Sayfa kimliğini almak için spreadsheets.get yöntemini kullanabilirsiniz. Aralıklar A1 gösterimi kullanılarak belirtilir. Örnek bir aralık: Sayfa1!A1:D5.

Yukarıdaki videoda, e-tablo hücrelerini çeşitli şekillerde biçimlendirmeyi öğreniyorsunuz. Örneğin: satırları dondurma, hücreleri kalınlaştırma, para birimi biçimlendirmesi uygulama, hücre doğrulama gerçekleştirme ve hücre değerlerini kısıtlama.

Hücre kenarlıklarını düzenleme

Aşağıdaki spreadsheets.batchUpdate kod örneği, A1:F10 aralığındaki her hücreye kesikli, mavi bir üst ve alt kenarlık vermek için UpdateBordersRequest işlevinin nasıl kullanılacağını gösterir. innerHorizontal alanı, aralığın iç kısmında yatay kenarlıklar oluşturur. Alan atlanırsa yalnızca aralığın tamamının üst ve alt kısımlarına kenarlık eklenir.

Her hücresinin üst ve alt kenarlığı kesikli mavi olan 3x3 tablo.
Şekil 1. Bir sayfadaki her hücreyi, üst ve alt kenarlığı kesikli mavi olacak şekilde biçimlendirin.

İstek protokolü aşağıda gösterilmiştir.

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

Başlık satırını biçimlendirme

Aşağıdaki spreadsheets.batchUpdate kod örneğinde, bir sayfadaki başlık satırını biçimlendirmek için RepeatCellRequest işlevinin nasıl kullanılacağı gösterilmektedir. İlk istek, metin rengini, arka plan rengini, metin yazı tipi boyutunu ve metin gerekçesini günceller ve metni kalın yapar. range alanında sütun dizinlerinin atlanması, satırın tamamının biçimlendirilmesine neden olur. İkinci istek, üstbilgi satırının dondurulması için sayfa özelliklerini ayarlar.

Bir sayfada biçimlendirilmiş başlık satırı içeren 3x3 tablo.
Şekil 2. Bir sayfadaki başlık satırını biçimlendirme

İstek protokolü aşağıda gösterilmiştir.

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

Hücreleri birleştir

Aşağıdaki spreadsheets.batchUpdate kod örneğinde, hücreleri birleştirmek için MergeCellsRequest işlevinin nasıl kullanılacağı gösterilmektedir. İlk istek, A1:B2 aralığını tek bir hücrede birleştirir. İkinci istek, satırları ayrı bırakırken A3:B6 aralığındaki sütunları birleştirir.

Bir sayfada birleştirilmiş hücrelerin bulunduğu 3x3 tablo.
Şekil 3. Sayfadaki hücreleri birleştirme

İstek protokolü aşağıda gösterilmiştir.

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

Bir aralık için özel tarih/saat veya ondalık biçim ayarlama

Aşağıdaki spreadsheets.batchUpdate kod örneğinde, hücreleri özel tarih/saat ve sayı biçimlerine sahip olacak şekilde güncellemek için RepeatCellRequest işlevinin nasıl kullanılacağı gösterilmektedir. İlk istek, A1:A10 aralığındaki hücrelere hh:mm:ss am/pm, ddd mmm dd yyyy özel tarih/saat biçimini verir. Bu biçimdeki bir tarih ve saat örneği: "02:05:07 PM, Sun Apr 03 2016".

İkinci istek, B1:B10 hücrelerine özel sayı biçimi #,##0.0000 uygular. Bu biçim, sayıların virgül ayırıcılarla gruplandırılması, ondalıktan sonra 4 basamak olması ve baştaki sıfırların bir tanesi hariç tümünün kaldırılması gerektiğini belirtir. Örneğin, "3.14" sayısı "3.1400" olarak, "12345.12345" sayısı ise "12.345,1235" olarak oluşturulur.

Daha fazla bilgi için Tarih ve sayı biçimleri başlıklı makaleyi inceleyin.

Bir sayfada özel tarih/saat ve sayı biçimlerinin bulunduğu 3x3 tablo.
Şekil 4. Bir sayfadaki hücreleri özel tarih/saat ve sayı biçimlerine sahip olacak şekilde güncelleyin.

İstek protokolü aşağıda gösterilmiştir.

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