Google Sheets API আপনাকে বিভিন্ন উপায়ে স্প্রেডশীটের মধ্যে ডেটা ম্যানিপুলেট করতে দেয়। পত্রক UI এর সাথে কাজ করা ব্যবহারকারীদের জন্য উপলব্ধ বেশিরভাগ কার্যকারিতা পত্রক API এর সাথেও করা সম্ভব। এই পৃষ্ঠার উদাহরণগুলি ব্যাখ্যা করে যে আপনি কীভাবে শীট API এর সাথে কিছু সাধারণ স্প্রেডশীট ক্রিয়াকলাপ অর্জন করতে পারেন৷
এই উদাহরণগুলি ভাষা নিরপেক্ষ হওয়ার জন্য HTTP অনুরোধের আকারে উপস্থাপন করা হয়েছে। Google API ক্লায়েন্ট লাইব্রেরি ব্যবহার করে কিভাবে বিভিন্ন ভাষায় একটি ব্যাচ আপডেট বাস্তবায়ন করতে হয় তা জানতে, স্প্রেডশীট আপডেট করুন দেখুন।
এই উদাহরণগুলিতে, স্থানধারক SPREADSHEET_ID এবং SHEET_ID নির্দেশ করে যে আপনি সেই IDগুলি কোথায় দেবেন৷ আপনি স্প্রেডশীট ইউআরএলে স্প্রেডশীট আইডি খুঁজে পেতে পারেন। আপনি spreadsheets.get পদ্ধতি ব্যবহার করে শীট আইডি পেতে পারেন। A1 স্বরলিপি ব্যবহার করে রেঞ্জগুলি নির্দিষ্ট করা হয়েছে। একটি উদাহরণ পরিসীমা হল Sheet1!A1:D5।
একটি পরিসরে ডেটা যাচাইকরণ প্রয়োগ করুন
নিচের spreadsheets.batchUpdate কোড নমুনাটি দেখায় যে কিভাবে একটি ডেটা যাচাইকরণ নিয়ম প্রয়োগ করতে SetDataValidationRequest ব্যবহার করতে হয়, যেখানে "মান > 5", রেঞ্জ A1:D10 এর প্রতিটি কক্ষে।
অনুরোধ প্রোটোকল নীচে দেখানো হয়েছে.
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 কোড নমুনাটি দেখায় কিভাবে 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"
}
]
}
}
]
}