Sayfa işlemleri

Google E-Tablolar API'si, e-tablo oluşturmanıza, temizlemenize, kopyalamanıza ve silmenize, ayrıca özelliklerini kontrol etmenize olanak tanır. Bu sayfadaki örneklerde, E-Tablolar API'si ile bazı yaygın E-Tablolar işlemlerini nasıl gerçekleştirebileceğiniz gösterilmektedir.

Bu örnekler, dil açısından tarafsız olması için HTTP istekleri biçiminde sunulur. Google API istemci kitaplıklarını kullanarak farklı dillerde toplu güncelleme yapmayı öğrenmek için E-tabloları güncelleme başlıklı makaleyi inceleyin.

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. spreadsheets.get yöntemini kullanarak e-tablo kimliğini alabilirsiniz. Aralıklar A1 gösterimi kullanılarak belirtilir. Örnek aralık: Sayfa1!A1:D5.

Sayfa ekleme

Aşağıdaki spreadsheets.batchUpdate kod örneğinde, bir e-tabloya sayfa eklemek ve aynı zamanda başlığı, ızgara boyutunu ve sekme rengini ayarlamak için AddSheetRequest işlevinin nasıl kullanılacağı gösterilmektedir.

Yanıt, oluşturulan sayfanın özelliklerini (SHEET_ID gibi) içeren bir nesneyi barındıran bir AddSheetResponse öğesinden oluşur.

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

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "addSheet": {
        "properties": {
          "title": "Deposits",
          "gridProperties": {
            "rowCount": 20,
            "columnCount": 12
          },
          "tabColor": {
            "red": 1.0,
            "green": 0.3,
            "blue": 0.4
          }
        }
      }
    }
  ]
}

Bir sayfayı biçimleri koruyarak tüm değerleri temizleme

Aşağıdaki spreadsheets.batchUpdate kod örneğinde, biçimlendirmede değişiklik yapmadan bir sayfadaki tüm değerleri kaldırmak için UpdateCellsRequest işlevinin nasıl kullanılacağı gösterilmektedir.

userEnteredValue alanının karşılık gelen bir değer olmadan belirtilmesi, aralıktaki değerleri temizleme talimatı olarak yorumlanır. Bu ayar diğer alanlarla da kullanılabilir. Örneğin, fields değerini userEnteredFormat olarak değiştirmek, E-Tablolar API'si tarafından desteklenen tüm biçimlendirmeleri sayfadan kaldırır ancak hücre değerlerini değiştirmez.

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

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateCells": {
        "range": {
          "sheetId": SHEET_ID
        },
        "fields": "userEnteredValue"
      }
    }
  ]
}

Bir sayfayı bir e-tablodan başka bir e-tabloya kopyalama

Aşağıdaki spreadsheet.sheets.copyTo kod örneğinde, SHEET_ID ile belirtilen tek bir sayfanın bir e-tablodan başka bir e-tabloya nasıl kopyalanacağı gösterilmektedir.

İstek gövdesinde bulunan TARGET_SPREADSHEET_ID değişkeni, hedef e-tabloyu belirtir. Kopya, orijinaldeki tüm değerleri, biçimlendirmeleri, formülleri ve diğer özellikleri korur. Kopyalanan sayfanın başlığı "[orijinal sayfa başlığı] kopyası" olarak ayarlanır.

Yanıt, oluşturulan sayfanın özelliklerini açıklayan bir SheetProperties nesnesinden oluşur.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/sheets/SHEET_ID:copyTo
{
  "destinationSpreadsheetId": "TARGET_SPREADSHEET_ID"
}

Sayfayı silme

Aşağıdaki spreadsheets.batchUpdate kod örneğinde, SHEET_ID ile belirtilen bir sayfayı silmek için DeleteSheetRequest işlevinin nasıl kullanılacağı gösterilmektedir.

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

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteSheet": {
        "sheetId": SHEET_ID
      }
    }
  ]
}

E-tablo verilerini okuma

Aşağıdaki spreadsheets.get kod örneğinde, SHEET_ID ve SPREADSHEET_ID tarafından belirtilen bir e-tablodan sayfa mülk bilgilerinin nasıl alınacağı gösterilmektedir. Bu yöntem genellikle belirli bir elektronik tablodaki sayfaların meta verilerini belirlemek için kullanılır. Böylece ek işlemler bu sayfaları hedefleyebilir. fields sorgu parametresi, yalnızca e-tablo mülk verilerinin (hücre değeri verilerinin veya e-tablonun tamamıyla ilgili verilerin aksine) döndürülmesi gerektiğini belirtir.

GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?&fields=sheets.properties

Yanıt, SheetProperties öğeleri içeren bir Sheet nesnesini barındıran bir Spreadsheet kaynağından oluşur. Belirli bir yanıt alanı varsayılan değere ayarlanmışsa yanıttan çıkarılır.

{
  "sheets": [
    {
      "properties": {
        "sheetId": SHEET_ID,
        "title": "Sheet1",
        "index": 0,
        "sheetType": "GRID",
        "gridProperties": {
          "rowCount": 100,
          "columnCount": 20,
          "frozenRowCount": 1
        }
        "tabColor": {
          "blue": 1.0
        }
      },
      ...
  ],
}