E-tablolarda birden fazla sayfa olabilir ve her sayfada istenilen sayıda satır veya sütun bulunabilir. Hücre, belirli bir satır ve sütunun kesişim noktasındaki bir konumdur ve veri değeri içerebilir. Google Sheets API, değerlerin okunmasını ve yazılmasını sağlamak için
spreadsheets.values
kaynağını sağlar.
Bu sayfada, spreadsheets.values kaynağının kullanımına ilişkin temel bilgiler açıklanmaktadır. Bir sayfaya satır eklemeniz veya biçimlendirmeyi ve diğer özellikleri güncellemeniz gerekiyorsa E-tabloları güncelleme başlıklı makalede açıklanan spreadsheets.batchUpdate yöntemini kullanmanız gerekir.
Yöntemler
spreadsheets.values kaynağı, değerleri okuma ve yazma için aşağıdaki yöntemleri sağlar. Bu yöntemlerin her biri belirli bir görev için kullanılır:
| Aralık Erişimi | Okuma | Yazma |
|---|---|---|
| Tek aralık | spreadsheets.values.get |
spreadsheets.values.update |
| Birden fazla aralık | spreadsheets.values.batchGet |
spreadsheets.values.batchUpdate |
| Ekleme | spreadsheets.values.append |
Genel olarak, verimliliği artırdığı için birden fazla okuma veya güncelleme işlemini sırasıyla batchGet ve batchUpdate yöntemleriyle birleştirmek iyi bir fikirdir.
Bu yöntemlerin her birine ilişkin örnekleri Temel okuma ve Temel yazma örnekleri sayfalarında bulabilirsiniz. Tüm örnekleri görmek için örnekler genel bakış sayfasına bakın.
Okuma
Bir sayfadan veri değerlerini okumak için e-tablo kimliğine ve aralık için A1 gösterimine ihtiyacınız vardır. Aralığı sayfa kimliği olmadan belirtmek (A1:B2), isteğin e-tablodaki ilk sayfada yürütüleceği anlamına gelir. E-tablo kimlikleri ve A1 gösterimi hakkında daha fazla bilgi için Google Sheets API'ye Genel Bakış başlıklı makaleyi inceleyin.
Çıktının biçimini kontrol eden çeşitli isteğe bağlı sorgu parametreleri vardır:
| Biçim Parametresi | Varsayılan değer |
|---|---|
majorDimension |
SATIRSAY |
valueRenderOption |
FORMATTED_VALUE |
dateTimeRenderOption |
SERIAL_NUMBER |
Yalnızca valueRenderOption FORMATTED_VALUE değilse dateTimeRenderOption kullanmanız gerektiğini unutmayın.
Döndürülen veri miktarıyla ilgili açık bir sınır yoktur. Hatalar veri döndürmez. Sondaki boş satırlar ve sütunlar atlanır.
Tekil ve toplu get yöntemleri aşağıda açıklanmıştır. Temel okuma işlemlerine ilişkin örnekler için Temel okuma başlıklı makaleye bakın.
Tek bir aralığı okuma
Bir e-tablodan tek bir değer aralığını okumak için spreadsheets.values.get isteğini kullanın:
Apps Komut Dosyası
Java
JavaScript
Node.js
PHP
Python
Ruby
Bu isteğe verilen yanıt, ValueRange nesnesi olarak döndürülür.
Birden fazla aralığı okuma
Bir e-tablodan birden fazla, kesintili değer aralığını okumak için, alınacak birkaç aralık belirtmenize olanak tanıyan bir
spreadsheets.values.batchGet
isteği kullanın:
Apps Komut Dosyası
Java
JavaScript
Node.js
PHP
Python
Ruby
Bu isteğe verilen yanıt, spreadsheetId ve ValueRange nesnelerinin listesini içeren bir BatchGetValuesResponse nesnesi olarak döndürülür.
Yazma
Bir sayfaya yazmak için e-tablo kimliğine, A1 gösterimindeki hücre aralığına ve uygun bir istek gövdesi nesnesinde yazmak istediğiniz verilere ihtiyacınız vardır. E-tablo kimlikleri ve A1 gösterimi hakkında daha fazla bilgi için Google Sheets API'ye Genel Bakış başlıklı makaleyi inceleyin.
Güncellemeler için geçerli bir
ValueInputOption parametresi gerekir.
Tekil güncellemeler için bu, zorunlu bir sorgu parametresidir. Toplu güncellemeler için bu parametre istek gövdesinde zorunludur. ValueInputOption denetimleri, aşağıdaki tabloda açıklandığı gibi giriş verilerinin nasıl yorumlanacağını ve giriş dizelerinin ayrıştırılıp ayrıştırılmayacağını belirler:
ValueInputOption |
Açıklama |
|---|---|
RAW |
Giriş ayrıştırılmaz ve dize olarak eklenir. Örneğin, "=1+2" girişi, hücreye formül yerine "=1+2" dizesini yerleştirir. (Boole veya sayı gibi dize olmayan değerler her zaman RAW olarak işlenir.) |
USER_ENTERED |
Giriş, E-Tablolar kullanıcı arayüzüne girilmiş gibi tam olarak ayrıştırılır. Örneğin, "1 Mart 2016" bir tarih, "=1+2" ise bir formül olur. Biçimler de tahmin edilebilir.Örneğin, "100,15 TL" para birimi biçimlendirmesiyle sayıya dönüştürülür. |
Tekil ve toplu güncelleme yöntemleri aşağıda açıklanmıştır. Temel yazma işlemlerine ilişkin örnekler için Temel yazma başlıklı makaleyi inceleyin.
Tek bir aralığa yazma
Verileri tek bir aralığa yazmak için şu
spreadsheets.values.update
isteğini kullanın:
Apps Komut Dosyası
Java
JavaScript
Node.js
PHP
Python
Ruby
Güncelleme isteğinin gövdesi bir ValueRange nesnesi olmalıdır. Ancak yalnızca values alanı zorunludur. range belirtilmişse URL'deki aralıkla eşleşmelidir. ValueRange içinde isteğe bağlı olarak majorDimension belirtebilirsiniz.
Varsayılan olarak ROWS kullanılır. COLUMNS belirtilirse her iç dizi satır yerine sütuna yazılır.
Güncelleme sırasında, veri içermeyen değerler atlanır. Verileri temizlemek için boş bir dize ("") kullanın.
Birden fazla aralık yazma
Birbirinden ayrı birden fazla aralık yazmak istiyorsanız
spreadsheets.values.batchUpdate
isteğini kullanabilirsiniz:
Apps Komut Dosyası
Java
JavaScript
Node.js
PHP
Python
Ruby
Toplu güncelleme isteğinin gövdesi, ValueInputOption ve ValueRange nesnelerinin (her yazılı aralık için bir tane) listesini içeren bir BatchUpdateValuesRequest nesnesi olmalıdır. Her ValueRange nesnesi kendi range, majorDimension ve giriş verilerini belirtir.
Değerleri ekleme
Bir sayfadaki veri tablosunun sonuna veri eklemek için şu spreadsheets.values.append isteğini kullanın:
Apps Komut Dosyası
Java
JavaScript
Node.js
PHP
Python
Ruby
Güncelleme isteğinin gövdesi bir ValueRange nesnesi olmalıdır. Ancak yalnızca values alanı zorunludur. range belirtilmişse URL'deki aralıkla eşleşmelidir. ValueRange içinde isteğe bağlı olarak majorDimension belirtebilirsiniz.
Varsayılan olarak ROWS kullanılır. COLUMNS belirtilirse her iç dizi satır yerine sütuna yazılır.
Giriş aralığı, mevcut verileri aramak ve bu aralıkta bir "tablo" bulmak için kullanılır. Değerler, tablonun ilk sütunundan başlayarak tablonun sonraki satırına eklenir. Örneğin, Sheet1 şu şekilde görünebilir:
| A | B | C | D | E | |
| 1 | x | y | z | ||
| 2 | x | y | z | ||
| 3 | |||||
| 4 | x | y | |||
| 5 | y | z | |||
| 6 | x | y | z | ||
| 7 |
E-tabloda 2 tablo vardır: A1:C2 ve B4:D6. Eklenen değerler, aşağıdaki range girişlerin tümü için B7 ile başlar:
Sheet1, çünkü sayfadaki tüm verileri inceleyipB4:D6konumundaki tablonun son tablo olduğunu belirler.B4veyaC5:D5, çünkü her ikisi deB4:D6tablosunda yer alıyor.B2:D4, çünkü aralıktaki son tabloB4:D6tablosudur (A1:C2tablosunu da içermesine rağmen).A3:G10, çünkü aralıktaki son tabloB4:D6tablosudur (öncesinde başlamasına ve sonrasında bitmesine rağmen).
Aşağıdaki range girişleri, B7 konumunda yazmaya başlamaz:
A1,A1:C2tablosunda olduğu içinA3ile yazmaya başlar.E4, herhangi bir tabloda yer almadığı içinE4ile yazmaya başlar. (A4da aynı nedenlerleA4itibarıyla yazmaya başlayacak.)
Ayrıca, bir tablodan sonra mevcut verilerin üzerine yazmak veya yeni veriler için yeni satırlar eklemek isteyip istemediğinizi de seçebilirsiniz. Varsayılan olarak, giriş tablodan sonraki verilerin üzerine yazar. Yeni verileri yeni satırlara yazmak için InsertDataOption kullanın ve insertDataOption=INSERT_ROWS değerini belirtin.
E-Tablolar'daki hücre ve satır sınırları hakkında daha fazla bilgi edinmek için Google Drive'da depolayabileceğiniz dosyalar başlıklı makaleyi inceleyin.