ডেটা অপারেশন

গুগল শিটস এপিআই আপনাকে স্প্রেডশিটের মধ্যে বিভিন্ন উপায়ে ডেটা ম্যানিপুলেট করতে দেয়। শিটস ইউআই ব্যবহার করে কাজ করা ব্যবহারকারীদের জন্য উপলব্ধ বেশিরভাগ কার্যকারিতা শিটস এপিআই ব্যবহার করেও করা সম্ভব। এই পৃষ্ঠার উদাহরণগুলি কীভাবে শিটস এপিআই ব্যবহার করে কিছু সাধারণ স্প্রেডশিট ক্রিয়াকলাপ অর্জন করতে পারেন তা দেখায়।

এই উদাহরণগুলি ভাষা নিরপেক্ষ থাকার জন্য HTTP অনুরোধের আকারে উপস্থাপন করা হয়েছে। Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে বিভিন্ন ভাষায় ব্যাচ আপডেট কীভাবে বাস্তবায়ন করতে হয় তা জানতে, আপডেট স্প্রেডশিট দেখুন।

এই উদাহরণগুলিতে, স্থানধারক SPREADSHEET_ID এবং SHEET_ID নির্দেশ করে যে আপনি কোথায় এই আইডিগুলি প্রদান করবেন। আপনি স্প্রেডশিট URL-এ স্প্রেডশিট আইডি খুঁজে পেতে পারেন। আপনি spreadsheets.get পদ্ধতি ব্যবহার করে শিট আইডি পেতে পারেন। A1 নোটেশন ব্যবহার করে রেঞ্জগুলি নির্দিষ্ট করা হয়েছে। একটি উদাহরণ রেঞ্জ হল Sheet1!A1:D5।

একটি পরিসরে ডেটা যাচাইকরণ প্রয়োগ করুন

নিম্নলিখিত spreadsheets.batchUpdate কোড নমুনাটি দেখায় যে কীভাবে SetDataValidationRequest ব্যবহার করে ডেটা বৈধকরণের নিয়ম প্রয়োগ করতে হয়, যেখানে A1:D10 পরিসরের প্রতিটি কক্ষে "মান > 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 পরিসর কেটে দেয় এবং PASTE_NORMAL এর সাথে PasteType enum ব্যবহার করে এর মান, সূত্র, ফর্ম্যাটিং পেস্ট করে এবং একই শীটে 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 কোড নমুনাটি দেখায় কিভাবে RepeatCellRequest ব্যবহার করে সূত্রটি =FLOOR(A1*PI()) B1:D10 রেঞ্জে কপি করতে হয়। সূত্রের পরিসরটি স্বয়ংক্রিয়ভাবে রেঞ্জের প্রতিটি সারি এবং কলামের জন্য বৃদ্ধি পায়, উপরের বাম ঘর থেকে শুরু করে। উদাহরণস্বরূপ, কোষ 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 কোড নমুনাটি দেখায় কিভাবে SortRangeRequest ব্যবহার করে A1:D10 পরিসরটি প্রথমে কলাম 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"
          }
        ]
      }
    }
  ]
}