ম্যাক্রো আয়ত্ত করার জন্য Google Apps স্ক্রিপ্ট টিউটোরিয়াল

কার্যকরী নির্বাহীরা জানেন যে সময় হল সীমিত ফ্যাক্টর... অন্য কিছু নয়, সম্ভবত, কার্যকর নির্বাহীদের ততটা আলাদা করে যতটা তাদের স্নেহময় প্রেমময় সময়ের যত্ন।

পিটার ড্রাকার

সময় আমাদের সবচেয়ে মূল্যবান সম্পদ। আমরা এটিকে সর্বোচ্চ-প্রভাবিত এবং সর্বাধিক মূল্য-সংবৃদ্ধিমূলক ক্রিয়াকলাপগুলিতে ব্যয় করতে চাই যা আমরা করতে পারি, কেবলমাত্র সেগুলি সাধারণত সর্বোচ্চ আর্থিক মূল্য বহন করে না, বরং ক্রমাগত নিজেদেরকে চ্যালেঞ্জ করতে এবং আমাদের কাজের সন্তুষ্টিকে সর্বাধিক করতেও৷

আপনার সময়ের আরও ভাল ব্যবহার করার জন্য আপনার দক্ষতা এবং উত্পাদনশীলতা উন্নত করার অনেক উপায় রয়েছে। Google পত্রক সম্পর্কে পূর্ববর্তী একটি নিবন্ধে, আমি কীভাবে অনলাইন সহযোগিতার শক্তি উৎপাদনশীলতা বৃদ্ধির জন্য এমন একটি চাবিকাঠি তা বিস্তারিতভাবে বর্ণনা করেছি৷

অন্য একটি নিবন্ধে, আমি দেখিয়েছি কিভাবে পাইথন প্রোগ্রামিং ভাষা আর্থিক পেশাদারদের জন্য একটি শক্তিশালী বিশ্লেষণ এবং টাস্ক অটোমেশন টুল হতে পারে৷

এটি থেকে অনুপ্রেরণা নিয়ে, আমি এখন একটি Google Apps স্ক্রিপ্ট টিউটোরিয়াল উপস্থাপন করতে চাই। Google Apps স্ক্রিপ্ট আপনাকে জাভাস্ক্রিপ্টে স্ক্রিপ্ট এবং প্রোগ্রাম লিখতে দেয়, যাতে Google-এর G Suite-এ পণ্যগুলিকে স্বয়ংক্রিয়ভাবে সংযুক্ত করা এবং প্রসারিত করা যায়, যার মধ্যে রয়েছে শীট, ডক্স, স্লাইডস, Gmail, ড্রাইভ এবং আরও কিছু। স্ক্রিপ্ট লেখার মতো এটি শেখার জন্য সময় বিনিয়োগের প্রয়োজন, কিন্তু উত্পাদনশীলতা বৃদ্ধি পায় এবং অতিরিক্ত সুযোগগুলি উন্মুক্ত করে এটিকে উপযুক্ত করে তোলে৷

প্রথম ধাপ হিসেবে, একটি পরিচিত ধারণা দেখে শুরু করা যাক:ম্যাক্রো।

Google পত্রকগুলিতে ম্যাক্রো রেকর্ড করা এবং ব্যবহার করা

আপনি যদি Excel এর সাথে কাজ করে উল্লেখযোগ্য সময় ব্যয় করে থাকেন, তাহলে আপনি অবশ্যই এক্সেলের VBA (অ্যাপ্লিকেশনের জন্য ভিজ্যুয়াল বেসিক) ম্যাক্রো ইন্টারফেসের সাথে যোগাযোগ করতে বাধ্য। হয় রেকর্ডিং বা নিজে লেখার মাধ্যমে অথবা অন্যের তৈরি করা পিগিব্যাক বন্ধ করার মাধ্যমে।

ম্যাক্রোগুলি পুনরাবৃত্তিমূলক এবং ক্লান্তিকর কর্মপ্রবাহগুলি স্বয়ংক্রিয় করার একটি দুর্দান্ত উপায়। VBA এমন একটি ভাষা নাও হতে পারে যা আপনি শেখার জন্য অনেক সময় উৎসর্গ করেছেন, তবে এর সৌন্দর্য ছিল যে উত্পাদনশীল হতে এবং আপনার নিজস্ব ম্যাক্রো তৈরি করার জন্য আপনাকে সত্যিই প্রয়োজন ছিল না। আপনি যে ওয়ার্কফ্লোটি স্বয়ংক্রিয় করতে চান তা সহজভাবে রেকর্ড করতে পারেন এবং তারপর কোডে যান এবং ম্যাক্রোকে আরও সাধারণ করার জন্য প্রয়োজনীয় ছোটখাটো পরিবর্তনগুলি করতে পারেন৷

কিছু ​​উপায়ে, VBA হল একটি দুর্দান্ত এবং ভুলে যাওয়া পাঠ যে কীভাবে নন-টেকনিক্যাল লোকেদের কোডিংয়ের সাথে পরিচয় করিয়ে দেওয়া যায় . আপনি যেভাবে ক্রিয়াকলাপ রেকর্ড করতে পারেন এবং তারপরে পরবর্তী পর্যালোচনার জন্য কোডটি পূরণ করতে পারেন তা প্রকৃতপক্ষে পাঠ্যপুস্তক পড়া এবং প্যাসিভভাবে টিউটোরিয়াল দেখার উপর শেখার অনেক বেশি বাস্তবসম্মত উপায়।

VBA এর একই রেকর্ডিং কার্যকারিতা Google পত্রকগুলিতে উপলব্ধ। এটি কীভাবে ব্যবহার করবেন তার একটি সহজ উদাহরণ এখানে দেওয়া হল:

একটি টেবিল আমদানি করতে একটি IMPORTHTML ক্যোয়ারী ব্যবহার করে কিছু নমুনা ডেটা দিয়ে শুরু করা যাক। এই উদাহরণে, আমি উইকিপিডিয়া থেকে বিশ্বের 15টি বৃহত্তম হেজ ফান্ডের একটি তালিকা ডাউনলোড করেছি। এটা বলা ছাড়া যায়, কিন্তু, এটি একটি নির্বিচারে উদাহরণ; উদ্দেশ্য হল আপনি বিষয়ের উপর, অ্যাপ্লিকেশনের উপর আরও ফোকাস করুন।

ম্যাক্রো রেকর্ডিং প্রক্রিয়াটি নিম্নলিখিত মেনু পথের মাধ্যমে প্ররোচিত হয়:টুলস> ম্যাক্রো> ম্যাক্রো রেকর্ড করুন।

তারপরে আমরা যে ক্রিয়াগুলি (পিসি ফর্ম্যাট) রেকর্ড করতে চাই তার মধ্য দিয়ে চলে যাই:

  1. প্রথম সারি নির্বাচন করুন
  2. সব কিছু নির্বাচন করতে Shift + Ctrl + নিচের তীর টিপুন
  3. কপি করতে Ctrl + C
  4. একটি নতুন শীট তৈরি করতে Shift + F11
  5. শীটটিকে একটি নতুন নাম দিন
  6. মানগুলি পেস্ট করতে Shift + Control + V টিপুন

একবার হয়ে গেলে, নীচে ম্যাক্রো উইন্ডোতে সংরক্ষণ বোতাম টিপুন, এটিকে একটি নাম এবং একটি ঐচ্ছিক কীবোর্ড শর্টকাট দিন৷

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

Google Apps স্ক্রিপ্ট ম্যানুয়ালি লেখা

এখন আমরা প্রথমবারের মতো Google Apps Script এর হাড় দেখতে পাব; প্রোগ্রামিং প্ল্যাটফর্ম যা Google এর সার্ভারে চলে। এটি আমাদের ম্যাক্রোগুলিকে ক্ষমতা দেয় এবং আপনাকে অ্যাপ্লিকেশনগুলির জন্য খুব জটিল ওয়ার্কফ্লো এবং এমনকি অ্যাড-অনগুলি তৈরি করতে দেয়৷ এটি শুধুমাত্র স্প্রেডশীটের কাজই নয় বরং Google-এর G Suite-এর মধ্যে আন্তঃসংযুক্ত প্রায় সবকিছুই স্বয়ংক্রিয়ভাবে ব্যবহার করা যেতে পারে।

অ্যাপস স্ক্রিপ্টের প্রোগ্রামিং ভাষা হল জাভাস্ক্রিপ্ট , সবচেয়ে জনপ্রিয় প্রোগ্রামিং ভাষাগুলির মধ্যে একটি, যার অর্থ যে কেউ ব্যাপকভাবে শিখতে চায় তাদের জন্য প্রচুর সম্পদ রয়েছে। কিন্তু, VBA এর মতোই, আপনার আসলেই প্রয়োজন নেই:আপনি একই রেকর্ড কার্যকারিতা ব্যবহার করতে পারেন এবং আপনি যে পদক্ষেপগুলি স্বয়ংক্রিয়ভাবে পুনরাবৃত্তি করতে চান তা করতে পারেন। রেকর্ডিং থেকে আউটপুট অশোধিত মনে হতে পারে এবং সম্ভবত আপনি যা করতে চান তার সাথে পুরোপুরি মিলবে না, তবে এটি একটি শক্ত যথেষ্ট সূচনা পয়েন্ট প্রদান করবে। এখন আমরা এইমাত্র রেকর্ড করা স্ক্রিপ্টের জন্য এটি করি।

রেকর্ডিং করার সময়, আপনি চূড়ান্ত রেকর্ডিংয়ে ক্যাপচার করতে চান না এমন কোনও অতিরিক্ত পদক্ষেপ দুর্ঘটনাক্রমে রেকর্ড না করার বিষয়ে সতর্কতা অবলম্বন করা বোধগম্য, তবে কখনও কখনও এটি এড়ানো কঠিন:স্টপ টিপানোর আগে একটি ভিন্ন সেল নির্বাচন করার মতো সহজ কিছু। রেকর্ডিং বোতামটি ক্যাপচার করা হবে এবং পরবর্তীকালে আপনি যখনই স্ক্রিপ্টটি চালাবেন তখন পুনরাবৃত্তি করা হবে। আমাদের স্ক্রিপ্ট সম্পাদনা করার সময় প্রথম পদক্ষেপ হবে এটি পরিষ্কার করা এবং এই জাতীয় পদক্ষেপগুলি সরানো। আসুন ফাইল মেনুতে টুলস> স্ক্রিপ্ট এডিটরে গিয়ে ডুইভ ইন করি।

আপনি যদি জাভাস্ক্রিপ্ট জানেন, তাহলে আপনি এটিকে তাৎক্ষণিকভাবে চিনতে পারবেন, এবং আধুনিক জাভাস্ক্রিপ্টে যেমনটি দেখতে পাবেন "let" বা "const" এর পরিবর্তে "var" কীওয়ার্ড দেখে অবাক হতে পারেন। এটি প্রতিফলিত করে যে অ্যাপস স্ক্রিপ্টের জাভাস্ক্রিপ্ট সংস্করণটি বেশ পুরানো এবং ভাষার সাম্প্রতিক বৈশিষ্ট্যগুলির অনেকগুলিকে সমর্থন করে না৷ শেষের দিকে, যারা সবচেয়ে সাম্প্রতিক ভাষার বৈশিষ্ট্যগুলি ব্যবহার করতে চান তাদের জন্য আমি একটি সমাধান উপস্থাপন করব৷

আপনি যখন প্রথমবার স্ক্রিপ্টটি চালান তখন এটি অনুমোদনের জন্য জিজ্ঞাসা করবে, যা অর্থবহ, যেহেতু স্ক্রিপ্টগুলি আপনার সমস্ত ডেটা পরিবর্তন করতে পারে (এবং সম্ভাব্য মুছে ফেলতে পারে)৷ আপনি সম্ভবত অন্যান্য Google পণ্য থেকে অনুমোদন প্রক্রিয়া চিনতে পারবেন।

এখন আমরা কোড পরিবর্তন করা শুরু করতে পারি। আমাদের যে পরিবর্তনগুলি করতে হবে তা গৌণ, কিন্তু আপনি যদি প্রথমবারের মতো এটি করেন, তবে এটির জন্য এখনও শীট অ্যাপস স্ক্রিপ্ট ডকুমেন্টেশনের মাধ্যমে কিছু দ্রুত অনুসন্ধান এবং/অথবা জাভাস্ক্রিপ্ট ধারণার দ্রুত অনুসন্ধানের প্রয়োজন হতে পারে, যেমন তারিখগুলির সাথে কাজ করা৷ এখানে যে জাভাস্ক্রিপ্ট একটি বিস্তৃত ভাষা তা কাজে আসে:আপনি যে সমস্যার মুখোমুখি হন বা কার্যকারিতা মনে আসে তার সমাধান সাধারণত দ্রুত খুঁজে পাওয়া যায় যদি আপনি আপনার অনুসন্ধান শব্দটিকে সহজবোধ্যভাবে বাক্যাংশ করেন।

মূল রেকর্ড করা সংস্করণ থেকে স্ক্রিপ্টের এই সংস্করণে করা পরিবর্তনগুলি হল যে আমরা যে নতুন শীট তৈরি করি তার জন্য হার্ডকোড করা নামের পরিবর্তে, আমরা এখন আজকের তারিখের পরিবর্তে এটির নাম রাখি। উপরন্তু, আমরা এই নতুন পত্রকটি উল্লেখ করতে শেষে অনুলিপি পথ পরিবর্তন করি। শেষ চারটি সারিও প্রদর্শন করে যে কীভাবে কিছু বিন্যাস ক্রিয়াকলাপ সম্পাদন করতে হয়, যেমন একটি ঘরের মান পরিবর্তন করা, কলামের আকার পরিবর্তন করা এবং গ্রিডলাইনগুলি লুকানো৷

function createSnapshot() {
  var spreadsheet = SpreadsheetApp.getActive();
  var date = new Date().toISOString().slice(0,10);
  var destination = spreadsheet.insertSheet(date);
  
  spreadsheet.getRange('HTML!A1:F1').activate();
  spreadsheet.getSelection()
    .getNextDataRange(SpreadsheetApp.Direction.DOWN)
    .activate();
  
  spreadsheet.getActiveRange()
    .copyTo(SpreadsheetApp.setActiveSheet(destination)
    .getRange(1,1),
    SpreadsheetApp.CopyPasteType.PASTE_VALUES,false);
  
  var sheet = spreadsheet.setActiveSheet(destination)
  sheet.getRange("D1").setValue("AUM $bn")
  sheet.setHiddenGridlines(true);
  sheet.getRange("A1:D1").setFontWeight("bold");
  sheet.autoResizeColumns(1, 4);
};

এখন স্ক্রিপ্টটি চালানোর ফলে দেখা যাবে যে নতুন শীটটি প্রকৃতপক্ষে আজকের তারিখের সাথে নামকরণ করা হয়েছে এবং মূল শীট থেকে মান হিসাবে (সূত্র নয়) কপি করা তথ্য রয়েছে৷

চার্টিং ভিজ্যুয়ালাইজেশন এখন একই রেকর্ড প্রক্রিয়া ব্যবহার করে যোগ করা যেতে পারে। আমি তিনটি সহজ চার্ট তৈরি করতে এটি ব্যবহার করেছি৷

প্রতিটির জন্য ক্লিন আপ কোড এইরকম কিছু দেখাবে:

function createColumnChart() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('C1:D16').activate();
  var sheet = spreadsheet.getActiveSheet();
  chart = sheet.newChart()
  .asColumnChart()
  .addRange(spreadsheet.getRange('B1:D16'))
  .setMergeStrategy(Charts.ChartMergeStrategy.MERGE_COLUMNS)
  .setTransposeRowsAndColumns(false)
  .setNumHeaders(-1)
  .setHiddenDimensionStrategy(Charts.ChartHiddenDimensionStrategy.IGNORE_BOTH)
  .setOption('useFirstColumnAsDomain', true)
  .setOption('curveType', 'none')
  .setOption('domainAxis.direction', 1)
  .setOption('isStacked', 'absolute')
  .setOption('series.0.color', '#0b5394')
  .setOption('series.0.labelInLegend', 'AUM $bn')
  .setPosition(19, 6, 15, 5)
  .build();
  sheet.insertChart(chart);
};

আবার, কিছু বিকল্প বিভ্রান্তিকর মনে হলে চিন্তা করবেন না:এটি সবই স্বয়ংক্রিয়ভাবে তৈরি, আপনাকে অপ্রয়োজনীয় পদক্ষেপগুলি সরাতে এবং পরে ছোটখাটো পরিবর্তন করতে যথেষ্ট বুঝতে হবে।

উন্নত Google Apps স্ক্রিপ্ট উদাহরণ:Google ড্রাইভ এবং স্লাইডের সাথে শীটগুলি সংযুক্ত করা

সবকিছুই এখন আকার নিতে শুরু করেছে, কিন্তু আমরা যে প্রকৃত আউটপুট চাই তা যদি স্প্রেডশিট না হয়ে একটি উপস্থাপনা হয়? যদি তা হয়, তাহলে এখান থেকে বেশিরভাগ কাজ এখনও ম্যানুয়াল হতে পারে, এবং যদি আমাদের পুনরাবৃত্ত ভিত্তিতে এটি করার প্রয়োজন হয় তবে আমরা খুব বেশি সময় বাঁচাতে পারিনি।

আমাদের স্প্রেডশীট থেকে উদাহরণের ডেটা ব্যবহার করে একটি উপস্থাপনা তৈরিকে স্বয়ংক্রিয়ভাবে দেখতে কেমন হতে পারে তা এখন অন্বেষণ করা যাক৷

এই অনুশীলনটি এখন দুটি কারণে আরও উন্নত হয়েছে:

  1. শীট ছাড়াও Google স্লাইড (এবং Google ড্রাইভ) এর সাথে কীভাবে কাজ করতে হয় তার সাথে আমাদের নিজেদের পরিচিত করতে হবে।
  2. স্লাইডে, বা সাধারণভাবে G Suite অ্যাপগুলির মধ্যে কাজ করার সময়, "রেকর্ড ম্যাক্রো" কার্যকারিতা উপলব্ধ নেই৷ এর মানে হল যে স্ক্র্যাচ থেকে স্ক্রিপ্ট লিখতে আপনাকে Apps স্ক্রিপ্ট সম্পর্কে যথেষ্ট জানতে হবে (এবং প্রতিটি G Suite পণ্যের জন্য ডকুমেন্টেশন নেভিগেট করতে স্বাচ্ছন্দ্য বোধ করুন)।

এই পরবর্তী উদাহরণটি আপনাকে শুরু করতে এবং পরিচিত করার জন্য কিছু মৌলিক বিল্ডিং ব্লক প্রদান করার জন্য।

শুরু করার জন্য, আসুন একটি টেমপ্লেট তৈরি করি যা আমরা পরে আমাদের স্ক্রিপ্ট ব্যবহার করে সামগ্রী দিয়ে পূরণ করতে চাই। এখানে দুটি সহজ উপস্থাপনা স্লাইড রয়েছে যা আমি একসাথে রাখলাম:

এর পরে, আপনাকে এই টেমপ্লেটটির আইডি পেতে হবে কারণ আপনাকে এটি আপনার স্ক্রিপ্টে উল্লেখ করতে হবে। অবচেতনভাবে আপনি এই আইডিটি অনেকবার দেখে থাকবেন কারণ এটি আসলে, অক্ষর এবং সংখ্যাগুলির এলোমেলো-দেখানো ক্রম যা আপনি আপনার ব্রাউজারের URL এ দেখতে পান:

https://docs.google.com/presentation/p/This_is_your_presentation_ID /edit#slide=id.p.

এখন আমাদের মূল স্ক্রিপ্টে নিম্নলিখিত লাইনগুলি যোগ করতে হবে। এটি আবার অনুমোদনের জন্য অনুরোধ করবে, এবার আপনার Google ড্রাইভ অ্যাক্সেস করার জন্য৷

function createPresentation() {
  var templateId = "insert_your_template_presentation_id_here";
  var template = DriveApp.getFileById(templateId);
  var copy = template.makeCopy("Weekly report " + date).getId();
  var presentation = SlidesApp.openById(copy);
}

আপনি যদি এই কোড স্নিপেটটি চালান তাহলে আপনি কোনো তাৎক্ষণিক ভিজ্যুয়াল প্রতিক্রিয়া দেখতে পাবেন না, কিন্তু আপনি যদি আপনার Google ড্রাইভের ফোল্ডারে দেখেন যেখানে আপনি টেমপ্লেটটি সংরক্ষণ করেছিলেন আপনি দেখতে পাবেন যে এটির একটি অনুলিপি সত্যিই তৈরি করা হয়েছে, এবং এটি আজকের ফাইলের নামে তারিখ। আমরা একটি ভাল শুরু করতে যাচ্ছি!

আসুন এখন এটিকে বিষয়বস্তু দিয়ে পূরণ করতে আরও বিল্ডিং ব্লক ব্যবহার করি, প্রোগ্রাম্যাটিকভাবে হাতে না দিয়ে। একই ফাংশনে নিম্নলিখিত সারি যোগ করুন:

  presentation.getSlides()[0]
    .getPageElements()[0]
    .asShape()
    .getText()
    .setText("Weekly Report " + date);

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

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

উপস্থাপনা তৈরি এবং শিরোনাম আপডেট করার পরে, এখন এটিতে আমাদের নতুন চার্টগুলির একটি সন্নিবেশ করার সময় এসেছে৷ অবজেক্টের শ্রেণিবিন্যাসকে মাথায় রেখে, নিম্নলিখিত কোডটি এখন অর্থপূর্ণ হওয়া উচিত:

  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getSheetByName(date);
  var chart = sheet.getCharts()[0];
  
  var position = {left: 25, top: 75};
  var size = {width: 480, height: 300};
  
  presentation.getSlides()[1]
    .insertSheetsChart(chart,
      position.left,
      position.top,
      size.width,
      size.height);

আপনি যদি সম্পূর্ণ স্ক্রিপ্ট চালান তাহলে আউটপুট উপস্থাপনাটি এইরকম দেখতে হবে:

আশা করি, এই উদাহরণটি নীতিগুলিকে ব্যাখ্যা করে এবং আপনার নিজের পরীক্ষা শুরু করার জন্য অনুপ্রেরণা প্রদান করে৷ আপনি যদি এটি সম্পর্কে চিন্তা করেন, আমি নিশ্চিত যে আপনি আজ আপনার কোম্পানিতে করা ম্যানুয়াল কাজের অন্তত কয়েকটি উদাহরণ খুঁজে পেতে পারেন যা সত্যিই এইভাবে স্বয়ংক্রিয় হওয়া উচিত। যান্ত্রিকভাবে এক ফরম্যাট এবং/অথবা স্থান থেকে অন্য জায়গায় ডেটা পরিবর্তন করার পরিবর্তে চিন্তা, বিশ্লেষণ এবং রায় প্রয়োগ করার জন্য সময় খালি করা। ডেভেলপমেন্ট এক্সপেরিয়েন্সের উন্নতিকরণ পূর্বে উল্লেখ করা হয়েছে, Google Apps স্ক্রিপ্টে সমর্থিত জাভাস্ক্রিপ্ট সংস্করণটি পুরানো এবং কার্যকারিতা অনলাইন স্ক্রিপ্ট এডিটর খুবই সীমিত। আপনি যদি একটি ম্যাক্রো রেকর্ড করছেন বা কয়েক ডজন লাইন লিখছেন তবে আপনি সত্যিই লক্ষ্য করবেন না। যাইহোক, যদি আপনার সাপ্তাহিক বা মাসিক প্রতিবেদনের সমস্ত দিক স্বয়ংক্রিয় করার উচ্চাভিলাষী পরিকল্পনা থাকে, বা প্লাগইন তৈরি করতে চান, তাহলে আপনি জেনে খুশি হবেন যে একটি কমান্ড-লাইন টুল রয়েছে যা আপনাকে আপনার পছন্দের উন্নয়ন পরিবেশ ব্যবহার করে বিকাশ করতে দেয়। .

আপনি যদি দক্ষতার এই স্তরে থাকেন, তাহলে আপনি সম্ভবত জাভাস্ক্রিপ্টের অফার করা সাম্প্রতিকতম বৈশিষ্ট্যগুলির সুবিধাও নিতে চাইবেন, এবং সম্ভবত আরও বেশি, যেহেতু কমান্ড-লাইন টুলের সাহায্যে আপনি টাইপস্ক্রিপ্টেও বিকাশ করতে পারেন।

গুগল শীট প্রোগ্রামিংয়ের জন্য পাইথন ব্যবহার করা

আপনি যদি দেখেন যে অ্যাপস স্ক্রিপ্টের সাথে কাজ করা আপনার চায়ের কাপ নয়, তবে ব্যবহারের ক্ষেত্রে নির্ভর করে অন্যান্য বিকল্প রয়েছে। আপনি যদি আরও উন্নত নম্বর ক্রাঞ্চিং করতে চান, APIs বা ডাটাবেসের সাথে সংযোগ করতে চান, বা জাভাস্ক্রিপ্টের তুলনায় পাইথন প্রোগ্রামিং ভাষাকে সহজভাবে পছন্দ করতে চান, তাহলে Google-এর Colaboratory একটি অমূল্য পণ্য। এটি আপনাকে Google-এর সার্ভারে চলমান একটি Jupyter নোটবুক দেয় যা আপনাকে পাইথন স্ক্রিপ্ট লিখতে দেয় যা আপনার Google ড্রাইভ ফাইলগুলির সাথে নির্বিঘ্নে একত্রিত হয় এবং 'gspread' লাইব্রেরির মাধ্যমে, আপনার স্প্রেডশীট ডেটার সাথে কাজ করা সহজ করে তোলে৷

আমি একটি নিবন্ধে পাইথনের অনেক সুবিধার রূপরেখা দিয়েছি কিভাবে এটিকে আর্থিক কার্যাবলীর জন্য ব্যবহার করতে হয়, যা ব্যবসায়িক এবং আর্থিক প্রসঙ্গে পাইথন এবং জুপিটার নোটবুকের সাথে কাজ করার একটি মৃদু ভূমিকা হিসেবে কাজ করে। আমার কাছে একটি খুব গুরুত্বপূর্ণ সুবিধা হল যে অ্যাপস স্ক্রিপ্টের বিপরীতে, কোলাবোরেটরিতে পাইথন নোটবুকটি ইন্টারেক্টিভ, তাই আপনি প্রতিটি লাইন বা কোডের ছোট ব্লক চালানোর পরে ফলাফল (বা ত্রুটি বার্তা) দেখতে পাবেন।

অটোমেশন আসক্তিকর

এই Google Apps স্ক্রিপ্ট টিউটোরিয়ালটি Google এর কোডিং ভাষার মাধ্যমে কী সম্ভব তার একটি ঝলক দেখিয়েছে। সম্ভাবনার কার্যত অবিরাম। যাইহোক, যদি আপনার কাছে প্রযুক্তিগত পটভূমি না থাকে, কোডের উদাহরণগুলি ভয়ঙ্কর মনে হতে পারে এবং আপনি হয়তো মনে মনে ভাবছেন যে Google Apps স্ক্রিপ্ট শেখার ফলে অর্জিত উৎপাদনশীলতা সময়ের পরিপ্রেক্ষিতে উল্লেখযোগ্য বিনিয়োগকে ছাড়িয়ে যাওয়ার জন্য যথেষ্ট নাও হতে পারে। এটা শিখতে।

এটি অবশ্যই অনেক কারণের উপর নির্ভর করে, যার মধ্যে রয়েছে ভবিষ্যতে আপনার কী ধরনের ভূমিকা রয়েছে বা পাওয়ার প্রত্যাশা রয়েছে। কিন্তু আপনি যদি এখানে দেখানো উদাহরণগুলির মতো কিছু করার আশা না করেন, তাহলেও কী সম্ভব এবং এটি বাস্তবায়নের জন্য মোটামুটিভাবে কতটা কাজ করতে হবে তা বোঝার কারণে আপনার কোম্পানির উৎপাদনশীলতা কীভাবে উন্নত করা যায় সে সম্পর্কে চিন্তাভাবনা এবং ধারণাগুলিকে ট্রিগার করতে পারে। আপনার ক্লায়েন্ট, অথবা আপনি ব্যক্তিগতভাবে।

ব্যক্তিগতভাবে, আমি পিছনে বসে একটি বোতামে আঘাত করার সন্তুষ্টির প্রমাণ দিতে পারি যা এক মিনিটের মধ্যে এক ঘন্টার ক্লান্তিকর ম্যানুয়াল কাজ সম্পূর্ণ করে। 50 তম বারের জন্য এটি করার পরে আপনি প্রথম স্থানে এটি একসাথে কাটাতে কয়েক ঘন্টা ব্যয় করার জন্য কৃতজ্ঞ হবেন, যা শেষ পর্যন্ত আরও মূল্য-সংযোজনমূলক সাধনার জন্য আপনার সময়কে খালি করে দিয়েছে। কিছুক্ষণ পরে, এই স্কেলেবিলিটি সুবিধাগুলি আসক্তিতে পরিণত হয়৷


কর্পোরেট অর্থায়ন
  1. অ্যাকাউন্টিং
  2. ব্যবসা কৌশল
  3. ব্যবসা
  4. কাস্টমার সম্পর্কযুক্ত ব্যাবস্থাপত্র
  5. অর্থায়ন
  6. স্টক ব্যবস্থাপনা
  7. ব্যক্তিগত মূলধন
  8. বিনিয়োগ
  9. কর্পোরেট অর্থায়ন
  10. বাজেট
  11. সঞ্চয়
  12. বীমা
  13. ঋণ
  14. অবসর