Google Sheets API की मदद से, स्प्रेडशीट में मौजूद डेटा को कई तरीकों से बदला जा सकता है. Sheets के यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करने वाले लोगों के लिए उपलब्ध ज़्यादातर फ़ंक्शन, Sheets API के ज़रिए भी इस्तेमाल किए जा सकते हैं. इस पेज पर दिए गए उदाहरणों से पता चलता है कि Sheets API की मदद से, स्प्रेडशीट से जुड़े कुछ सामान्य काम कैसे किए जा सकते हैं.
इन उदाहरणों को एचटीटीपी अनुरोधों के तौर पर दिखाया गया है, ताकि ये किसी भाषा पर आधारित न हों. Google API क्लाइंट लाइब्रेरी का इस्तेमाल करके, अलग-अलग भाषाओं में बैच अपडेट लागू करने का तरीका जानने के लिए, स्प्रेडशीट अपडेट करना लेख पढ़ें.
इन उदाहरणों में, प्लेसहोल्डर SPREADSHEET_ID
और SHEET_ID
यह दिखाते हैं कि आपको वे आईडी कहां देने हैं. स्प्रेडशीट के यूआरएल में स्प्रेडशीट आईडी देखा जा सकता है. spreadsheets.get
तरीके का इस्तेमाल करके, शीट आईडी पाया जा सकता है. रेंज को A1 नोटेशन का इस्तेमाल करके तय किया जाता है. उदाहरण के लिए, रेंज Sheet1!A1:D5 है.
किसी रेंज पर डेटा की पुष्टि करने की सुविधा लागू करना
यहां दिए गए spreadsheets.batchUpdate
कोड के सैंपल में, डेटा की पुष्टि करने के नियम को लागू करने के लिए SetDataValidationRequest
का इस्तेमाल करने का तरीका बताया गया है. इस नियम के तहत, A1:D10 रेंज की हर सेल में "value > 5" लागू किया जाता है.
अनुरोध प्रोटोकॉल यहां दिखाया गया है.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"setDataValidation": {
"range": {
"sheetId": SHEET_ID
,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"rule": {
"condition": {
"type": "NUMBER_GREATER",
"values": [
{
"userEnteredValue": "5"
}
]
},
"inputMessage": "Value must be > 5",
"strict": true
}
}
}
]
}
सेल फ़ॉर्मैटिंग को कॉपी करके चिपकाना
नीचे दिए गए
spreadsheets.batchUpdate
कोड के सैंपल में बताया गया है कि
CopyPasteRequest
का इस्तेमाल करके, सिर्फ़ A1:D10 रेंज की फ़ॉर्मैटिंग को कॉपी करके, उसी शीट की F1:I10 रेंज में कैसे चिपकाया जाता है. इस तरीके में, सिर्फ़ फ़ॉर्मैटिंग और डेटा की पुष्टि चिपकाने के लिए, PASTE_FORMAT
के साथ PasteType
enum का इस्तेमाल किया जाता है. A1:D10 में मौजूद ओरिजनल वैल्यू में कोई बदलाव नहीं होता.
अनुरोध प्रोटोकॉल यहां दिखाया गया है.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "copyPaste": { "source": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 4 }, "destination": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 5, "endColumnIndex": 9 }, "pasteType": "PASTE_FORMAT", "pasteOrientation": "NORMAL" } } ] }
सेल को काटें और चिपकाएं
यहां दिए गए spreadsheets.batchUpdate
कोड सैंपल में, CutPasteRequest
का इस्तेमाल करने का तरीका बताया गया है.
यह A1:D10 रेंज को कट करता है और PasteType
enum का इस्तेमाल करता है. साथ ही, PASTE_NORMAL
के साथ इसकी वैल्यू, फ़ॉर्मूले, फ़ॉर्मैटिंग, और मर्ज किए गए सेल को उसी शीट में F1:I10 रेंज में चिपकाता है. सोर्स रेंज की सेल का ओरिजनल कॉन्टेंट हटा दिया जाता है.
अनुरोध प्रोटोकॉल यहां दिखाया गया है.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "cutPaste": { "source": { "sheetId":SHEET_ID
, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 4 }, "destination": { "sheetId":SHEET_ID
, "rowIndex": 0, "columnIndex": 5 }, "pasteType": "PASTE_NORMAL" } } ] }
किसी फ़ॉर्मूले को किसी रेंज में दोहराना
यहां दिए गए spreadsheets.batchUpdate
कोड सैंपल में बताया गया है कि =FLOOR(A1*PI())
फ़ॉर्मूले को B1:D10 रेंज में कॉपी करने के लिए, RepeatCellRequest
का इस्तेमाल कैसे किया जाता है. फ़ॉर्मूला की रेंज, रेंज में मौजूद हर लाइन और कॉलम के लिए अपने-आप बढ़ जाती है. यह सबसे ऊपर बाईं ओर मौजूद सेल से शुरू होती है. उदाहरण के लिए, सेल B1 में फ़ॉर्मूला =FLOOR(A1*PI())
है, जबकि
सेल D6 में फ़ॉर्मूला =FLOOR(C6*PI())
है.
अनुरोध प्रोटोकॉल यहां दिखाया गया है.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"repeatCell": {
"range": {
"sheetId": SHEET_ID
,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 1,
"endColumnIndex": 4
},
"cell": {
"userEnteredValue": {
"formulaValue": "=FLOOR(A1*PI())"
}
},
"fields": "userEnteredValue"
}
}
]
}
एक से ज़्यादा क्रम से लगाने की खास बातों के हिसाब से किसी रेंज को क्रम से लगाना
नीचे दिए गए
spreadsheets.batchUpdate
कोड सैंपल में, A1:D10 रेंज को क्रम से लगाने के लिए
SortRangeRequest
का इस्तेमाल करने का तरीका दिखाया गया है. सबसे पहले, कॉलम B को बढ़ते क्रम में, फिर कॉलम C को घटते क्रम में, और इसके बाद कॉलम D को घटते क्रम में लगाया जाता है.
अनुरोध प्रोटोकॉल यहां दिखाया गया है.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"sortRange": {
"range": {
"sheetId": SHEET_ID
,
"startRowIndex": 0,
"endRowIndex": 10,
"startColumnIndex": 0,
"endColumnIndex": 4
},
"sortSpecs": [
{
"dimensionIndex": 1,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 2,
"sortOrder": "DESCENDING"
},
{
"dimensionIndex": 3,
"sortOrder": "DESCENDING"
}
]
}
}
]
}