Google E-Tablolar API'si; sayfa oluşturmanıza, e-tablolarınızı temizlemenize, kopyalamanıza, silmenize ve ayrıca özelliklerini kontrol etmenize olanak tanır. Bu sayfadaki örnekler, Sheets API ile bazı yaygın E-Tablolar işlemlerini nasıl gerçekleştirebileceğinizi göstermektedir.
Bu örnekler, dilden bağımsız olarak HTTP istekleri şeklinde sunulur. Google API istemci kitaplıklarını kullanarak farklı dillerde toplu güncelleme yapmayı öğrenmek için E-tabloları güncelleme bölümüne bakın.
Bu örneklerde SPREADSHEET_ID
ve SHEET_ID
yer tutucuları, bu kimlikleri nerede sağlayacağınızı belirtir. E-tablo kimliğini e-tablonun URL'sinde bulabilirsiniz. Sayfa kimliğini, spreadsheets.get
yöntemini kullanarak alabilirsiniz. Aralıklar, A1 gösterimi kullanılarak belirtilir. Örneğin Sayfa1!A1:D5.
Sayfa ekle
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
öğesinin nasıl kullanılacağı gösterilmektedir.
Yanıt, oluşturulan e-tablonun özelliklerine (ör. SHEET_ID
) sahip bir nesne içeren 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 } } } } ] }
Biçimleri korurken tüm değerlerin bulunduğu bir sayfayı temizle
Aşağıdaki spreadsheets.batchUpdate
kod örneğinde, biçimlendirmeyi değiştirmeden bir sayfadaki tüm değerleri kaldırmak için UpdateCellsRequest
öğesinin 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ğeri userEnteredFormat
olarak değiştirildiğinde, Sheets API'nin desteklediği tüm biçimlendirmeler sayfadan kaldırılır ancak hücre değerleri değiştirilmeden kalır.
İ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 e-tablodan diğerine sayfa kopyalama
Aşağıdaki spreadsheet.sheets.copyTo
kod örneğinde, SHEET_ID
tarafından belirtilen tek bir sayfanın bir e-tablodan başka bir e-tabloya nasıl kopyalanacağı gösterilmektedir.
İstek gövdesindeki TARGET_SPREADSHEET_ID
değişkeni, hedef e-tabloyu belirtir. Kopya, orijinalin tüm değerlerini, biçimlendirmesini, formüllerini ve diğer özelliklerini 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
"
}
Sayfa silme
Aşağıdaki spreadsheets.batchUpdate
kod örneğinde, SHEET_ID
tarafından belirtilen bir sayfayı silmek için DeleteSheetRequest
öğesinin 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
}
}
]
}
Sayfa verilerini okuma
Aşağıdaki spreadsheets.get
kod örneğinde, SHEET_ID
ve SPREADSHEET_ID
tarafından belirtilen bir e-tablodan e-tablo özellik bilgilerinin nasıl alınacağı gösterilmektedir. Bu yöntem genellikle belirli bir e-tablodaki sayfaların meta verilerini belirlemek için kullanılır. Böylece ek işlemler bu sayfaları hedefleyebilir. fields
sorgu parametresi, yalnızca sayfa özelliği verilerinin (hücre değeri verileri veya e-tablonun tamamıyla ilgili veriler yerine) döndürülmesi gerektiğini belirtir.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
?&fields=sheets.properties
Yanıt, SheetProperties
öğesine sahip bir Sheet
nesnesi içeren bir Spreadsheet
kaynağından oluşur. Belirli bir yanıt alanı varsayılan değere ayarlanırsa 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
}
},
...
],
}