नाम वाली और सुरक्षित की गई रेंज

Google Sheets API से, नाम या सुरक्षित की गई रेंज बनाने, उनमें बदलाव करने, और उन्हें मिटाने की सुविधा मिलती है. इस पेज पर दिए गए उदाहरणों में बताया गया है कि Sheets API का इस्तेमाल करके, Sheets की कुछ सामान्य कार्रवाइयां कैसे की जा सकती हैं.

ये उदाहरण भाषा न्यूट्रल होने के लिए एचटीटीपी अनुरोधों के तौर पर दिखाए गए हैं. Google API क्लाइंट लाइब्रेरी का इस्तेमाल करके, बैच अपडेट को अलग-अलग भाषाओं में लागू करने का तरीका जानने के लिए, स्प्रेडशीट अपडेट करें देखें.

इन उदाहरणों में, SPREADSHEET_ID और SHEET_ID प्लेसहोल्डर से पता चलता है कि आपको ऐसे आईडी कहां देने हैं. स्प्रेडशीट के यूआरएल में, स्प्रेडशीट आईडी देखा जा सकता है. spreadsheets.get तरीके का इस्तेमाल करके, शीट आईडी पाया जा सकता है. रेंज की जानकारी, A1 नोटेशन का इस्तेमाल करके दी जाती है. उदाहरण के लिए, Sheets1!A1:D5 रेंज का एक उदाहरण है.

इसके अलावा, प्लेसहोल्डर NAMED_RANGE_ID और PROTECTED_RANGE_ID नाम वाली और सुरक्षित की गई रेंज के आईडी देते हैं. namedRangeId और protectedRangeId का इस्तेमाल, संबंधित रेंज को अपडेट करने या मिटाने का अनुरोध करते समय किया जाता है. आईडी को Sheets API के उस अनुरोध के जवाब में दिखाया जाता है जो नाम वाली या सुरक्षित की गई रेंज बनाता है. Spreadsheet रिस्पॉन्स के मुख्य हिस्से में, spreadsheets.get तरीके का इस्तेमाल करके मौजूदा रेंज के आईडी पाए जा सकते हैं.

नाम वाली या सुरक्षित की गई रेंज जोड़ें

नीचे दिए गए spreadsheets.batchUpdate कोड सैंपल में, दो अनुरोध ऑब्जेक्ट को इस्तेमाल करने का तरीका बताया गया है. पहला नतीजा, रेंज A1:E3 नाम के "काउंट" को असाइन करने के लिए, AddNamedRangeRequest का इस्तेमाल करता है. दूसरे चरण में, A4:E4 रेंज में चेतावनी वाले लेवल की सुरक्षा अटैच करने के लिए, AddProtectedRangeRequest का इस्तेमाल किया जाता है. इस लेवल की सुरक्षा अब भी रेंज में मौजूद सेल में बदलाव करने की अनुमति देती है, लेकिन बदलाव करने से पहले एक चेतावनी दिखती है.

इन अनुरोधों से, AddNamedRangeResponse और AddProtectedRangeResponse दिखता है, जिनमें रेंज आईडी और प्रॉपर्टी होती हैं.

अनुरोध का प्रोटोकॉल नीचे दिखाया गया है.

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
        }
      }
    }
  ]
}

नाम वाली या सुरक्षित की गई रेंज मिटाएं

नीचे दिए गए spreadsheets.batchUpdate कोड सैंपल में, दो अनुरोध ऑब्जेक्ट को इस्तेमाल करने का तरीका बताया गया है. पहला विकल्प, DeleteNamedRangeRequest का इस्तेमाल करके, मौजूदा नाम की रेंज को मिटाने के लिए करता है. इसके लिए, पिछले एपीआई कॉल के NAMED_RANGE_ID का इस्तेमाल किया जाता है. दूसरे यूआरएल में, DeleteProtectedRangeRequest का इस्तेमाल करके मौजूदा रेंज की सुरक्षा मिटाई जाती है. इसके लिए, पिछले एपीआई कॉल से PROTECTED_RANGE_ID का इस्तेमाल किया जाता है.

अनुरोध का प्रोटोकॉल नीचे दिखाया गया है.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteNamedRange": {
          "namedRangeId": "NAMED_RANGE_ID",
      }
    },
    {
      "deleteProtectedRange": {
        "protectedRangeId": PROTECTED_RANGE_ID,
      }
    }
  ]
}

नाम वाली या सुरक्षित की गई रेंज अपडेट करें

नीचे दिए गए spreadsheets.batchUpdate कोड सैंपल में, दो अनुरोध ऑब्जेक्ट को इस्तेमाल करने का तरीका बताया गया है. पहला विकल्प, पिछले एपीआई कॉल के NAMED_RANGE_ID का इस्तेमाल करके, मौजूदा नाम वाली रेंज के नाम को "InitialCounts" से अपडेट करने के लिए, UpdateNamedRangeRequest का इस्तेमाल करता है. दूसरे चरण में, UpdateProtectedRangeRequest का इस्तेमाल करके मौजूदा सुरक्षित की गई रेंज को अपडेट किया जाता है, ताकि अब वह उसी नाम वाली रेंज को सुरक्षित कर सके. Editors तरीके से, सिर्फ़ सूची में शामिल उपयोगकर्ता इन सेल में बदलाव कर सकते हैं. यह अनुरोध, पिछले एपीआई कॉल के NAMED_RANGE_ID और PROTECTED_RANGE_ID का इस्तेमाल करता है.

अनुरोध का प्रोटोकॉल नीचे दिखाया गया है.

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"
      }
    }
  ]
}