Google E-Tablolar API, adlandırılmış veya korumalı aralıklar oluşturmanıza, değiştirmenize ve silmenize olanak tanır. Bu sayfada, 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.
Ayrıca NAMED_RANGE_ID
ve PROTECTED_RANGE_ID
yer tutucuları, adlandırılmış ve korunan aralıkların kimliklerini sağlar. namedRangeId
ve protectedRangeId
, ilişkili aralıkları güncelleme veya silme isteği yapılırken kullanılır. Kimlik, adlandırılmış veya korumalı bir aralık oluşturan bir E-Tablolar API isteğine yanıt olarak döndürülür. Mevcut aralıkların kimliklerini, spreadsheets.get
yöntemiyle Spreadsheet
yanıt gövdesinde alabilirsiniz.
Adlandırılmış veya korumalı aralıklar ekleme
Aşağıdaki spreadsheets.batchUpdate
kod örneğinde, 2 istek nesnesinin nasıl kullanılacağı gösterilmektedir. İlkinde, A1:E3 aralığına "Sayımlar" adını atamak için AddNamedRangeRequest
kullanılır. İkinci formül, A4:E4 aralığına uyarı düzeyinde koruma eklemek için AddProtectedRangeRequest
değerini kullanır. Bu düzey koruması, aralıktaki hücrelerin düzenlenmesine izin vermeye devam eder ancak değişiklik yapmadan önce bir uyarı gösterir.
Bu istekler, aralık kimliklerini ve özelliklerini içeren bir AddNamedRangeResponse
ve AddProtectedRangeResponse
döndürür.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "addNamedRange": { "namedRange": { "name": "Counts", "range": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 3, "startColumnIndex": 0, "endColumnIndex": 5, }, } } }, { "addProtectedRange": { "protectedRange": { "range": { "sheetId":SHEET_ID
, "startRowIndex": 3, "endRowIndex": 4, "startColumnIndex": 0, "endColumnIndex": 5, }, "description": "Protecting total row", "warningOnly": true } } } ] }
Adlandırılmış veya korumalı aralıkları silme
Aşağıdaki spreadsheets.batchUpdate
kod örneğinde, 2 istek nesnesinin nasıl kullanılacağı gösterilmektedir. İlkinde, önceki bir API çağrısındaki NAMED_RANGE_ID
değerini kullanarak mevcut bir adlandırılmış aralığı silmek için DeleteNamedRangeRequest
işlevi kullanılır. İkinci örnekte, önceki bir API çağrısından alınan PROTECTED_RANGE_ID
değerini kullanarak mevcut bir aralık korumasını silmek için DeleteProtectedRangeRequest
işlevi kullanılır.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "deleteNamedRange": { "namedRangeId": "NAMED_RANGE_ID
", } }, { "deleteProtectedRange": { "protectedRangeId":PROTECTED_RANGE_ID
, } } ] }
Adlandırılmış veya korumalı aralıkları güncelleme
Aşağıdaki spreadsheets.batchUpdate
kod örneğinde, 2 istek nesnesinin nasıl kullanılacağı gösterilmektedir. İlkinde, önceki bir API çağrısından alınan NAMED_RANGE_ID
değerini kullanarak mevcut bir adlandırılmış aralığın adını "InitialCounts" olarak güncellemek için UpdateNamedRangeRequest
işlevi kullanılır. İkinci örnekte, mevcut bir korumalı aralığın adını aynı adla korunacak şekilde güncellemek için UpdateProtectedRangeRequest
işlevi kullanılır. Editors
yöntemi, yalnızca listelenen kullanıcıların bu hücreleri düzenlemesine olanak tanır. Bu istek, önceki API çağrılarından alınan NAMED_RANGE_ID
ve PROTECTED_RANGE_ID
öğelerini kullanır.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "updateNamedRange": { "namedRange": { "namedRangeId":NAMED_RANGE_ID
, "name": "InitialCounts", }, "fields": "name", } }, { "updateProtectedRange": { "protectedRange": { "protectedRangeId":PROTECTED_RANGE_ID
, "namedRangeId":NAMED_RANGE_ID
, "warningOnly": false, "editors": { "users": [ "charlie@example.com", "sasha@example.com" ] } }, "fields": "namedRangeId,warningOnly,editors" } } ] }