দেখে মনে হচ্ছে বর্তমানে চিত্রগুলি বা কাস্টম মেনু আইটেমগুলি শীট অ্যান্ড্রয়েড অ্যাপে কাজ করে না। আমি স্প্রেডশিটের মধ্যে একটি "ফাংশন মেনু" তৈরি করার পরামর্শ দিচ্ছি। উদাহরণ স্বরূপ:
- সেল এ 1 বলছে "একটি ফাংশন নির্বাচন করুন"
- সেল বি 1 এর একটি ডেটা বৈধকরণের নিয়ম রয়েছে যা আপনার ফাংশনগুলির নামগুলিতে সামগ্রীটি সীমাবদ্ধ করে। আমার উদাহরণে, তারা হ'ল "ইনসার্টসোমথিং" এবং "কনভার্টসোমথিং"। (ডেটা বৈধতা সংলাপে "সহায়তা দেখান" পরীক্ষা করবেন না, "সহায়তা" পপআপটি মোবাইলে বিরক্তি)
onEdit
প্রতিটি সম্পাদনা চলমান একটি স্ক্রিপ্ট ফাংশন (সাধারণ ট্রিগার), বি 1 এর সামগ্রী পরিবর্তন হয়েছে কিনা তা পরীক্ষা করে। যদি তা হয় তবে এটি উপযুক্ত ফাংশনটি চালায়।
এখানে প্রদর্শনের উদ্দেশ্যে অন্তর্ভুক্ত দুটি ফাংশন সহ আমার কোডটি এখানে রয়েছে:
function onEdit(e) {
if (e.range.getA1Notation() == 'B1') {
if (/^\w+$/.test(e.value)) {
this[e.value]();
e.range.clear();
}
}
}
function insertSomething() {
var sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange(2,3).setValue('inserted something');
}
function convertSomething() {
var sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange(3,3).setValue('converted something');
}
শর্তটি /^\w+$/.test(e.value)
কেবলমাত্র আমাদের কাছে কোনও দুর্দান্ত স্ট্রিং আছে কিনা তা পরীক্ষা করে দেখার জন্য এবং কেউ কেউ কোনওভাবে সেল বি 1 তে রেখেছিল এমন দূষিত কোডটি কার্যকর করছে না। ফাংশনটি দ্বারা উদ্বেগ প্রকাশিত হওয়ার পরে this[e.value]();
( this
বিশ্বব্যাপী অবজেক্টটিকে বোঝায় এবং ফাংশনের নাম রয়েছে) বি 1 এর বিষয়বস্তু সাফ হয়ে যায়। কেউ আবার একই ফাংশনটি চালানোর জন্য বা অন্য কোনওটি বেছে নিতে পারে।
ধারণার প্রমাণ হিসাবে, এখানে অ্যাপ্লিকেশনটির স্ক্রিনশট রয়েছে। স্ক্রিনশট 1: নির্বাচন একটি ফাংশন
স্ক্রিনশট 2: ফাংশনটি চালুর পরে
তথ্যসূত্র