গুগল অ্যাপস স্ক্রিপ্ট আপনাকে গুগল শিটস দিয়ে নতুন এবং দুর্দান্ত জিনিস করতে দেয়। আপনি গুগল শিটসে কাস্টম মেনু , ডায়ালগ এবং সাইডবার যুক্ত করতে অ্যাপস স্ক্রিপ্ট ব্যবহার করতে পারেন। এটি আপনাকে শিটসের জন্য কাস্টম ফাংশন লিখতে দেয়, পাশাপাশি ক্যালেন্ডার, ড্রাইভ এবং জিমেইলের মতো অন্যান্য গুগল পরিষেবার সাথে শিটসকে সংহত করতে দেয়।
গুগল শিটের জন্য ডিজাইন করা বেশিরভাগ স্ক্রিপ্ট স্প্রেডশিটে কোষ, সারি এবং কলামের সাথে ইন্টারঅ্যাক্ট করার জন্য অ্যারেগুলিকে ম্যানিপুলেট করে। আপনি যদি জাভাস্ক্রিপ্টে অ্যারেগুলির সাথে পরিচিত না হন, তাহলে কোডেক্যাডেমি অ্যারেগুলির জন্য একটি দুর্দান্ত প্রশিক্ষণ মডিউল অফার করে। (মনে রাখবেন যে এই কোর্সটি গুগল দ্বারা তৈরি করা হয়নি এবং এর সাথে সম্পর্কিতও নয়।)
গুগল শিটস-এর সাথে অ্যাপস স্ক্রিপ্ট ব্যবহারের দ্রুত পরিচিতির জন্য, ম্যাক্রো, মেনু এবং কাস্টম ফাংশনের জন্য ৫ মিনিটের কুইকস্টার্ট গাইডটি দেখুন।
শুরু করুন
অ্যাপস স্ক্রিপ্টে বিশেষ API রয়েছে যা আপনাকে প্রোগ্রাম্যাটিকভাবে গুগল শিট তৈরি, পড়তে এবং সম্পাদনা করতে দেয়। অ্যাপস স্ক্রিপ্ট দুটি বিস্তৃত উপায়ে গুগল শিটের সাথে ইন্টারঅ্যাক্ট করতে পারে: যেকোনো স্ক্রিপ্ট একটি স্প্রেডশিট তৈরি বা পরিবর্তন করতে পারে যদি স্ক্রিপ্টের ব্যবহারকারীর স্প্রেডশিটের জন্য উপযুক্ত অনুমতি থাকে এবং একটি স্ক্রিপ্ট একটি স্প্রেডশিটের সাথেও আবদ্ধ হতে পারে, যা স্ক্রিপ্টকে ইউজার ইন্টারফেস পরিবর্তন করার বা স্প্রেডশিট খোলার সময় প্রতিক্রিয়া জানাতে বিশেষ ক্ষমতা দেয়। একটি আবদ্ধ স্ক্রিপ্ট তৈরি করতে, গুগল শিটের মধ্যে থেকে এক্সটেনশন > অ্যাপস স্ক্রিপ্ট নির্বাচন করুন।
স্প্রেডশিট পরিষেবাটি গুগল শিটকে একটি গ্রিড হিসেবে বিবেচনা করে, যা দ্বি-মাত্রিক অ্যারে দিয়ে কাজ করে। স্প্রেডশিট থেকে ডেটা পুনরুদ্ধার করতে, আপনাকে স্প্রেডশিটে অ্যাক্সেস পেতে হবে যেখানে ডেটা সংরক্ষণ করা হয়, স্প্রেডশিটে ডেটা ধারণকারী রেঞ্জটি পেতে হবে এবং তারপরে কোষগুলির মানগুলি পেতে হবে। অ্যাপস স্ক্রিপ্ট স্প্রেডশিটে স্ট্রাকচার্ড ডেটা পড়ে এবং তাদের জন্য জাভাস্ক্রিপ্ট অবজেক্ট তৈরি করে ডেটা অ্যাক্সেস সহজতর করে।
তথ্য পড়া হচ্ছে
ধরুন আপনার কাছে পণ্যের নাম এবং পণ্য নম্বরের একটি তালিকা আছে যা আপনি একটি স্প্রেডশিটে সংরক্ষণ করেন, যেমনটি নীচের ছবিতে দেখানো হয়েছে।

নীচের উদাহরণে পণ্যের নাম এবং পণ্য নম্বরগুলি কীভাবে পুনরুদ্ধার এবং লগ করতে হয় তা দেখানো হয়েছে।
function logProductInfo() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
for (var i = 0; i < data.length; i++) {
Logger.log('Product name: ' + data[i][0]);
Logger.log('Product number: ' + data[i][1]);
}
}
লগ দেখুন
লগ করা ডেটা দেখতে, স্ক্রিপ্ট এডিটরের উপরে, এক্সিকিউশন লগ এ ক্লিক করুন।
তথ্য লেখা
স্প্রেডশিটে নতুন পণ্যের নাম এবং নম্বরের মতো ডেটা সংরক্ষণ করতে, স্ক্রিপ্টের শেষে নিম্নলিখিত কোডটি যুক্ত করুন।
function addProduct() {
var sheet = SpreadsheetApp.getActiveSheet();
sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
উপরের কোডটি স্প্রেডশিটের নীচে একটি নতুন সারি যুক্ত করে, যেখানে মানগুলি নির্দিষ্ট করা আছে। আপনি যদি এই ফাংশনটি চালান, তাহলে আপনি স্প্রেডশিটে একটি নতুন সারি যুক্ত দেখতে পাবেন।
কাস্টম মেনু এবং ব্যবহারকারী ইন্টারফেস
আপনি কাস্টম মেনু, ডায়ালগ বক্স এবং সাইডবার যোগ করে গুগল শিট কাস্টমাইজ করতে পারেন। মেনু তৈরির মূল বিষয়গুলি জানতে, মেনু নির্দেশিকাটি দেখুন। একটি ডায়ালগ বক্সের বিষয়বস্তু কাস্টমাইজ করার বিষয়ে জানতে, HTML পরিষেবা নির্দেশিকাটি দেখুন।
আপনি একটি স্প্রেডশিটের মধ্যে একটি ছবি বা অঙ্কনের সাথে একটি স্ক্রিপ্ট ফাংশন সংযুক্ত করতে পারেন; ব্যবহারকারী যখন ছবিটি বা অঙ্কনে ক্লিক করবেন তখন ফাংশনটি কার্যকর হবে। আরও জানতে, Google Sheets-এ ছবি এবং অঙ্কন দেখুন।
যদি আপনি আপনার কাস্টম ইন্টারফেসটি অ্যাড-অনের অংশ হিসেবে প্রকাশ করার পরিকল্পনা করেন, তাহলে গুগল শিটস এডিটরের স্টাইল এবং লেআউটের সাথে সামঞ্জস্যপূর্ণ হওয়ার জন্য স্টাইল গাইড অনুসরণ করুন।
গুগল ফর্মের সাথে সংযোগ স্থাপন করা হচ্ছে
অ্যাপস স্ক্রিপ্ট আপনাকে ফর্ম এবং স্প্রেডশিট পরিষেবার মাধ্যমে গুগল ফর্মগুলিকে গুগল শিটের সাথে সংযুক্ত করতে দেয়। এই বৈশিষ্ট্যটি স্প্রেডশিটে থাকা ডেটার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে একটি গুগল ফর্ম তৈরি করতে পারে। অ্যাপস স্ক্রিপ্ট আপনাকে ট্রিগার ব্যবহার করতে সক্ষম করে, যেমন onFormSubmit যাতে ব্যবহারকারী ফর্মে সাড়া দেওয়ার পরে একটি নির্দিষ্ট ক্রিয়া সম্পাদন করতে পারে। গুগল শিটগুলিকে গুগল ফর্মের সাথে সংযুক্ত করার বিষয়ে আরও জানতে, গুগল ফর্মের জন্য ম্যানেজিং রেসপন্স 5-মিনিট কুইকস্টার্ট ব্যবহার করে দেখুন।
বিন্যাসকরণ
Range ক্লাসে setBackground(color) এর মতো পদ্ধতি রয়েছে যা একটি সেল বা সেলের পরিসরের ফর্ম্যাট অ্যাক্সেস এবং পরিবর্তন করতে পারে। নিম্নলিখিত উদাহরণটি দেখায় কিভাবে আপনি একটি রেঞ্জের ফন্ট স্টাইল সেট করতে পারেন:
function formatMySpreadsheet() {
// Set the font style of the cells in the range of B2:C2 to be italic.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var cell = sheet.getRange('B2:C2');
cell.setFontStyle('italic');
}
ডেটা যাচাইকরণ
অ্যাপস স্ক্রিপ্ট আপনাকে গুগল শিটসে বিদ্যমান ডেটা-ভ্যালিডেশন নিয়মগুলি অ্যাক্সেস করতে বা নতুন নিয়ম তৈরি করতে দেয়। উদাহরণস্বরূপ, নিম্নলিখিত নমুনাটি দেখায় যে কীভাবে একটি ডেটা-ভ্যালিডেশন নিয়ম সেট করতে হয় যা একটি কক্ষে শুধুমাত্র 1 থেকে 100 এর মধ্যে সংখ্যাগুলিকে অনুমতি দেয়।
function validateMySpreadsheet() {
// Set a rule for the cell B4 to be a number between 1 and 100.
var cell = SpreadsheetApp.getActive().getRange('B4');
var rule = SpreadsheetApp.newDataValidation()
.requireNumberBetween(1, 100)
.setAllowInvalid(false)
.setHelpText('Number must be between 1 and 100.')
.build();
cell.setDataValidation(rule);
}
ডেটা-ভ্যালিডেশন নিয়ম নিয়ে কাজ করার বিষয়ে আরও তথ্যের জন্য, SpreadsheetApp.newDataValidation() , DataValidationBuilder , এবং Range.setDataValidation(rule) দেখুন।
চার্ট
অ্যাপস স্ক্রিপ্ট আপনাকে একটি স্প্রেডশিটে চার্ট এম্বেড করতে দেয় যা একটি নির্দিষ্ট পরিসরে ডেটা উপস্থাপন করে। নিম্নলিখিত উদাহরণটি একটি এম্বেডেড বার চার্ট তৈরি করে, ধরে নিচ্ছি যে আপনার A1:B15 কোষে চার্টেবল ডেটা আছে:
function newChart() {
// Generate a chart representing the data in the range of A1:B15.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var chart = sheet.newChart()
.setChartType(Charts.ChartType.BAR)
.addRange(sheet.getRange('A1:B15'))
.setPosition(5, 5, 0, 0)
.build();
sheet.insertChart(chart);
}
আপনার স্প্রেডশিটে একটি চার্ট এম্বেড করার বিষয়ে আরও জানতে, EmbeddedChart এবং নির্দিষ্ট চার্ট বিল্ডার, যেমন EmbeddedPieChartBuilder দেখুন।
গুগল শিটে কাস্টম ফাংশন
একটি কাস্টম ফাংশন =SUM(A1:A5) এর মতো একটি বিল্ট-ইন স্প্রেডশিট ফাংশনের মতো, তবে আপনি অ্যাপস স্ক্রিপ্টের সাহায্যে ফাংশনের আচরণ নির্ধারণ করতে পারবেন। উদাহরণস্বরূপ, আপনি একটি কাস্টম ফাংশন, in2mm() তৈরি করতে পারেন, যা ইঞ্চি থেকে মিলিমিটারে একটি মান রূপান্তর করে, তারপর আপনার স্প্রেডশিটে সূত্রটি ব্যবহার করে একটি কক্ষে =in2mm(A1) বা =in2mm(10) টাইপ করুন।
কাস্টম ফাংশন সম্পর্কে আরও জানতে, মেনু এবং কাস্টম ফাংশন ৫-মিনিটের কুইকস্টার্ট ব্যবহার করে দেখুন, অথবা কাস্টম ফাংশন সম্পর্কে আরও বিস্তারিত নির্দেশিকাটি দেখুন।
ম্যাক্রো
গুগল শিটস ইউআই থেকে অ্যাপস স্ক্রিপ্ট কোড কার্যকর করার আরেকটি উপায় হল ম্যাক্রো। কাস্টম ফাংশনের বিপরীতে, আপনি এগুলিকে কীবোর্ড শর্টকাট দিয়ে বা গুগল শিটস মেনু দিয়ে সক্রিয় করতে পারেন। আরও তথ্যের জন্য, গুগল শিটস ম্যাক্রো দেখুন।
গুগল শিটের জন্য অ্যাড-অন
অ্যাড-অন হল বিশেষভাবে প্যাকেজ করা অ্যাপস স্ক্রিপ্ট প্রকল্প যা গুগল শিটের ভিতরে চলে এবং গুগল শিটের অ্যাড-অন স্টোর থেকে ইনস্টল করা যেতে পারে। আপনি যদি গুগল শিটের জন্য একটি স্ক্রিপ্ট তৈরি করে থাকেন এবং এটি বিশ্বের সাথে ভাগ করে নিতে চান, তাহলে অ্যাপস স্ক্রিপ্ট আপনাকে আপনার স্ক্রিপ্টটি অ্যাড-অন হিসাবে প্রকাশ করতে দেয় যাতে অন্যান্য ব্যবহারকারীরা অ্যাড-অন স্টোর থেকে এটি ইনস্টল করতে পারেন।
ট্রিগার
গুগল শিটস ফাইলের সাথে আবদ্ধ স্ক্রিপ্টগুলি স্প্রেডশিটে সম্পাদনা অ্যাক্সেস থাকা কোনও ব্যবহারকারী যখন স্প্রেডশিটটি খোলে বা সম্পাদনা করে তখন স্বয়ংক্রিয়ভাবে প্রতিক্রিয়া জানাতে onOpen() এবং onEdit() ফাংশনগুলির মতো সহজ ট্রিগার ব্যবহার করতে পারে।
সাধারণ ট্রিগারের মতো, ইনস্টলযোগ্য ট্রিগারগুলি কোনও নির্দিষ্ট ঘটনা ঘটলে Google Sheets কে স্বয়ংক্রিয়ভাবে একটি ফাংশন চালাতে দেয়। তবে, ইনস্টলযোগ্য ট্রিগারগুলি সাধারণ ট্রিগারের তুলনায় বেশি নমনীয়তা প্রদান করে এবং নিম্নলিখিত ইভেন্টগুলিকে সমর্থন করে: খুলুন, সম্পাদনা করুন, পরিবর্তন করুন, ফর্ম জমা দিন এবং সময়-চালিত (ঘড়ি)।