स्प्रेडशीट में कई शीट हो सकती हैं. हर शीट में कई लाइनें या कॉलम हो सकते हैं. सेल, किसी खास लाइन और कॉलम के इंटरसेक्शन पर मौजूद होती है. इसमें डेटा वैल्यू हो सकती है. Google Sheets API, वैल्यू को पढ़ने और लिखने के लिए spreadsheets.values संसाधन उपलब्ध कराता है.
इस पेज पर, spreadsheets.values रिसॉर्स को इस्तेमाल करने के बारे में बुनियादी जानकारी दी गई है. अगर आपको किसी शीट में लाइनें डालनी हैं या फ़ॉर्मैटिंग और अन्य प्रॉपर्टी अपडेट करनी हैं, तो आपको spreadsheets.batchUpdate तरीके का इस्तेमाल करना होगा. इसके बारे में स्प्रेडशीट अपडेट करना लेख में बताया गया है.
तरीके
spreadsheets.values संसाधन, वैल्यू को पढ़ने और लिखने के लिए ये तरीके उपलब्ध कराता है. हर तरीका किसी खास काम के लिए होता है:
| रेंज ऐक्सेस | रीडिंग | लेखन |
|---|---|---|
| एक रेंज | spreadsheets.values.get |
spreadsheets.values.update |
| एक से ज़्यादा रेंज | spreadsheets.values.batchGet |
spreadsheets.values.batchUpdate |
| जोड़ना | spreadsheets.values.append |
आम तौर पर, कई रीड या अपडेट को batchGet और batchUpdate तरीकों (क्रम से) के साथ जोड़ना बेहतर होता है. इससे परफ़ॉर्मेंस बेहतर होती है.
इनमें से हर तरीके के उदाहरण, आपको पढ़ने के बुनियादी कौशल और लिखने के बुनियादी कौशल के सैंपल पेजों पर मिल सकते हैं. सभी नमूने देखने के लिए, नमूनों की खास जानकारी वाला पेज देखें.
पढ़ें
किसी शीट से डेटा वैल्यू पढ़ने के लिए, आपको स्प्रेडशीट आईडी और रेंज के लिए A1 नोटेशन की ज़रूरत होती है. शीट आईडी (A1:B2) के बिना रेंज तय करने का मतलब है कि अनुरोध, स्प्रेडशीट की पहली शीट पर लागू होगा. स्प्रेडशीट आईडी और A1 नोटेशन के बारे में ज़्यादा जानकारी के लिए, Google Sheets API की खास जानकारी देखें.
कई वैकल्पिक क्वेरी पैरामीटर, आउटपुट के फ़ॉर्मैट को कंट्रोल करते हैं:
| फ़ॉर्मैट पैरामीटर | डिफ़ॉल्ट मान |
|---|---|
majorDimension |
ROWS |
valueRenderOption |
FORMATTED_VALUE |
dateTimeRenderOption |
SERIAL_NUMBER |
ध्यान दें कि आपको dateTimeRenderOption का इस्तेमाल सिर्फ़ तब करना चाहिए, जब valueRenderOption FORMATTED_VALUE न हो.
जवाब में मिले डेटा की कोई तय सीमा नहीं है. गड़बड़ियों की वजह से कोई डेटा नहीं मिलता. आखिर में मौजूद खाली पंक्तियों और कॉलम को शामिल नहीं किया जाता.
सिंगल और बैच गेट के तरीकों के बारे में यहां बताया गया है. पढ़ने की बुनियादी कार्रवाइयों के सैंपल के लिए, बुनियादी रीडिंग देखें.
किसी एक रेंज को पढ़ना
स्प्रेडशीट से वैल्यू की एक रेंज को पढ़ने के लिए, spreadsheets.values.get अनुरोध का इस्तेमाल करें:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
इस अनुरोध का जवाब, ValueRange ऑब्जेक्ट के तौर पर दिखाया जाता है.
एक से ज़्यादा रेंज पढ़ना
स्प्रेडशीट से वैल्यू की कई अलग-अलग रेंज को पढ़ने के लिए, spreadsheets.values.batchGet अनुरोध का इस्तेमाल करें. इससे आपको वापस पाने के लिए कई रेंज तय करने की सुविधा मिलती है:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
इस अनुरोध का जवाब, BatchGetValuesResponse ऑब्जेक्ट के तौर पर मिलता है. इसमें spreadsheetId और ValueRange ऑब्जेक्ट की सूची शामिल होती है.
लिखें
किसी शीट में लिखने के लिए, आपको स्प्रेडशीट आईडी, A1 नोटेशन में सेल की रेंज, और वह डेटा चाहिए जिसे आपको अनुरोध के मुख्य हिस्से के ऑब्जेक्ट में लिखना है. स्प्रेडशीट आईडी और A1 नोटेशन के बारे में ज़्यादा जानने के लिए, Google Sheets API की खास जानकारी देखें.
अपडेट के लिए, मान्य ValueInputOption पैरामीटर ज़रूरी है.
एक बार अपडेट करने के लिए, यह क्वेरी पैरामीटर ज़रूरी है. बैच अपडेट के लिए, अनुरोध के मुख्य हिस्से में यह पैरामीटर ज़रूरी है. ValueInputOption कंट्रोल से यह तय होता है कि इनपुट डेटा को कैसे समझा जाए. साथ ही, इससे यह भी तय होता है कि इनपुट स्ट्रिंग को पार्स किया जाए या नहीं. इसके बारे में इस टेबल में बताया गया है:
ValueInputOption |
ब्यौरा |
|---|---|
RAW |
इनपुट को पार्स नहीं किया जाता है और इसे स्ट्रिंग के तौर पर डाला जाता है. उदाहरण के लिए, "=1+2" इनपुट करने पर, सेल में फ़ॉर्मूले के बजाय स्ट्रिंग "=1+2" दिखती है. (बूलियन या संख्याओं जैसी नॉन-स्ट्रिंग वैल्यू को हमेशा RAW के तौर पर हैंडल किया जाता है.) |
USER_ENTERED |
इनपुट को ठीक उसी तरह से पार्स किया जाता है जैसे Sheets के यूज़र इंटरफ़ेस (यूआई) में डाला गया हो. उदाहरण के लिए, "1 मार्च, 2016" एक तारीख बन जाती है और "=1+2" एक फ़ॉर्मूला बन जाता है. फ़ॉर्मैट का अनुमान भी लगाया जा सकता है. इसलिए, "$100.15" को मुद्रा के फ़ॉर्मैट वाली संख्या में बदल दिया जाता है. |
एक-एक करके अपडेट करने और बैच अपडेट करने के तरीकों के बारे में यहां बताया गया है. लिखने की बुनियादी कार्रवाइयों के सैंपल के लिए, बुनियादी लेखन देखें.
किसी एक रेंज में लिखना
किसी एक रेंज में डेटा लिखने के लिए, spreadsheets.values.update अनुरोध का इस्तेमाल करें:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
अपडेट के अनुरोध का मुख्य हिस्सा, ValueRange ऑब्जेक्ट होना चाहिए. हालांकि, सिर्फ़ values फ़ील्ड को भरना ज़रूरी है. अगर range तय किया गया है, तो यह यूआरएल में मौजूद रेंज से मेल खाना चाहिए. ValueRange में, इसके majorDimension को वैकल्पिक तौर पर तय किया जा सकता है.
डिफ़ॉल्ट रूप से, ROWS का इस्तेमाल किया जाता है. अगर COLUMNS तय किया जाता है, तो हर इनर ऐरे को किसी पंक्ति के बजाय कॉलम में लिखा जाता है.
अपडेट करते समय, ऐसी वैल्यू को छोड़ दिया जाता है जिनमें कोई डेटा नहीं होता. डेटा मिटाने के लिए, खाली स्ट्रिंग ("") का इस्तेमाल करें.
एक से ज़्यादा रेंज लिखना
अगर आपको कई अलग-अलग रेंज लिखनी हैं, तो spreadsheets.values.batchUpdate अनुरोध का इस्तेमाल करें:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
बैच अपडेट के अनुरोध का मुख्य हिस्सा, BatchUpdateValuesRequest ऑब्जेक्ट होना चाहिए. इसमें ValueInputOption और ValueRange ऑब्जेक्ट की सूची होती है. हर ऑब्जेक्ट, लिखी गई रेंज के लिए होता है. हर ValueRange ऑब्जेक्ट, अपने range, majorDimension, और इनपुट डेटा के बारे में बताता है.
वैल्यू जोड़ना
अगर आपको किसी शीट में मौजूद डेटा की टेबल के बाद डेटा जोड़ना है, तो spreadsheets.values.append अनुरोध का इस्तेमाल करें:
Apps Script
Java
JavaScript
Node.js
PHP
Python
Ruby
अपडेट के अनुरोध का मुख्य हिस्सा, ValueRange ऑब्जेक्ट होना चाहिए. हालांकि, सिर्फ़ values फ़ील्ड को भरना ज़रूरी है. अगर range तय किया गया है, तो यह यूआरएल में मौजूद रेंज से मेल खाना चाहिए. ValueRange में, इसके majorDimension को वैकल्पिक तौर पर तय किया जा सकता है.
डिफ़ॉल्ट रूप से, ROWS का इस्तेमाल किया जाता है. अगर COLUMNS तय किया जाता है, तो हर इनर ऐरे को किसी पंक्ति के बजाय कॉलम में लिखा जाता है.
इनपुट रेंज का इस्तेमाल, मौजूदा डेटा को खोजने और उस रेंज में "टेबल" ढूंढने के लिए किया जाता है. वैल्यू को टेबल की अगली लाइन में जोड़ दिया जाता है. यह टेबल के पहले कॉलम से शुरू होता है. उदाहरण के लिए, Sheet1 को देखें, जो इस तरह दिखता है:
| 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 |
शीट में दो टेबल हैं: A1:C2 और B4:D6. जोड़ी गई वैल्यू, यहां दी गई सभी range इनपुट के लिए B7 से शुरू होंगी:
Sheet1, क्योंकि यह शीट में मौजूद सभी डेटा की जांच करेगा और यह तय करेगा किB4:D6पर मौजूद टेबल, आखिरी टेबल है.B4याC5:D5, क्योंकि ये दोनोंB4:D6टेबल में हैं.B2:D4, क्योंकि रेंज में मौजूद आखिरी टेबलB4:D6टेबल है (भले ही, इसमेंA1:C2टेबल भी शामिल हो).A3:G10, क्योंकि रेंज में मौजूद आखिरी टेबलB4:D6टेबल है (भले ही, यह टेबलB4:D6टेबल से पहले शुरू हुई हो और बाद में खत्म हुई हो).
नीचे दिए गए range इनपुट के लिए, B7 पर लिखना शुरू नहीं किया जा सका:
A1,A3से लिखना शुरू करेगा, क्योंकि यहA1:C2टेबल में है.E4,E4से लिखना शुरू करेगा, क्योंकि यह किसी भी टेबल में नहीं है. (A4भी इन्हीं वजहों सेA4पर लिखना शुरू कर देगा.)
इसके अलावा, आपके पास यह चुनने का विकल्प होता है कि टेबल में नया डेटा जोड़ने के बाद, मौजूदा डेटा को बदलना है या नए डेटा के लिए नई पंक्तियां जोड़नी हैं. डिफ़ॉल्ट रूप से, टेबल के बाद इनपुट किया गया डेटा, पुराने डेटा की जगह ले लेता है. नए डेटा को नई लाइनों में लिखने के लिए, InsertDataOption का इस्तेमाल करें और insertDataOption=INSERT_ROWS तय करें.
Sheets में सेल और लाइन की सीमाओं के बारे में ज़्यादा जानने के लिए, Google Drive में स्टोर की जा सकने वाली फ़ाइलें लेख पढ़ें.