Computer >> कंप्यूटर ट्यूटोरियल >  >> सॉफ्टवेयर >> Office

Google Sheets में जानने योग्य 5 स्क्रिप्ट फंक्शन

Google Sheets एक शक्तिशाली क्लाउड-आधारित स्प्रेडशीट टूल है जो आपको Microsoft Excel में किए जाने वाले लगभग सभी काम करने की सुविधा देता है। लेकिन Google Sheets की असली ताकत उसके साथ आने वाली Google स्क्रिप्टिंग सुविधा में निहित है।

Google Apps Script कैसे बनाएं

आप अभी Google Sheets के अंदर से ही अपना पहला Google Apps Script बनाना शुरू कर सकते हैं।

ऐसा करने के लिए, मेनू से Tools चुनें, फिर Script Editor पर क्लिक करें।

यह स्क्रिप्ट एडिटर विंडो खोलता है और डिफ़ॉल्ट रूप से myFunction() नामक एक फंक्शन बनाता है। यहीं आप अपना Google Script बना और टेस्ट कर सकते हैं।

इसे आज़माने के लिए, एक Google Sheets स्क्रिप्ट फंक्शन बनाएं जो एक सेल से डेटा पढ़े, उस पर गणना करे, और परिणाम को दूसरे सेल में आउटपुट करे।

सेल से डेटा प्राप्त करने का फंक्शन getRange() और getValue() है। आप सेल की पहचान पंक्ति और कॉलम से कर सकते हैं। इसलिए यदि रो 2 और कॉलम 1 (A कॉलम) में कोई मान है, तो आपके स्क्रिप्ट का पहला भाग इस तरह दिखेगा:

function myFunction() { var sheet = SpreadsheetApp.getActiveSheet(); var row = 2; var col = 1; var data = sheet.getRange(row, col).getValue(); }

यह उस सेल के मान को data वेरिएबल में स्टोर करता है। आप डेटा पर गणना कर सकते हैं, और फिर उस डेटा को दूसरे सेल में लिख सकते हैं। इसलिए इस फंक्शन का अंतिम भाग होगा:

 var results = data * 100; sheet.getRange(row, col+1).setValue(results); }

अपना फंक्शन लिखने के बाद, सेव करने के लिए डिस्क आइकन चुनें।

पहली बार जब आप इस तरह का नया Google Sheets स्क्रिप्ट फंक्शन चलाएंगे (रन आइकन चुनकर), तो आपको अपने Google अकाउंट पर स्क्रिप्ट चलाने के लिए ऑथराइज़ेशन देना होगा।

अनुमति दें पर क्लिक करके जारी रखें। एक बार आपका स्क्रिप्ट चल जाने पर, आप देखेंगे कि स्क्रिप्ट ने गणना के परिणाम को टारगेट सेल में लिख दिया है।

अब जब आप बेसिक Google Apps स्क्रिप्ट फंक्शन लिखना जानते हैं, तो आइए कुछ और एडवांस्ड फंक्शन पर नज़र डालते हैं।

ऐरे लोड करने के लिए getValues का उपयोग करें

आप स्क्रिप्टिंग के साथ अपनी स्प्रेडशीट में डेटा पर गणना करने की अवधारणा को ऐरे का उपयोग करके एक नए स्तर पर ले जा सकते हैं। यदि आप Google Apps Script में getValues का उपयोग करके एक वेरिएबल लोड करते हैं, तो वेरिएबल एक ऐरे होगा जो शीट से कई मान लोड कर सकता है।

function myFunction() { var sheet = SpreadsheetApp.getActiveSheet(); var data = sheet.getDataRange().getValues();

data वेरिएबल एक मल्टी-डायमेंशनल ऐरे है जो शीट के सभी डेटा को रखता है। डेटा पर गणना करने के लिए, आप for लूप का उपयोग करते हैं। फोर लूप का काउंटर प्रत्येक पंक्ति के माध्यम से काम करेगा, और कॉलम स्थिर रहेगा, उस कॉलम के आधार पर जहां से आप डेटा खींचना चाहते हैं।

हमारी उदाहरण स्प्रेडशीट में, आप डेटा की तीन पंक्तियों पर गणना इस प्रकार कर सकते हैं।

for (var i = 1; i < data.length; i++) { var result = data[i][0] * 100; sheet.getRange(i+1, 2).setValue(result); } }

ऊपर की तरह ही इस स्क्रिप्ट को सेव और रन करें। आप देखेंगे कि सभी परिणाम आपकी स्प्रेडशीट में कॉलम 2 में भर गए हैं।

आप देखेंगे कि ऐरे वेरिएबल में सेल और पंक्ति को रेफरेंस करना getRange फंक्शन से अलग है।

data[i][0] ऐरे डायमेंशन को संदर्भित करता है जहां पहला डायमेंशन पंक्ति है और दूसरा कॉलम। ये दोनों शून्य से शुरू होते हैं।

getRange(i+1, 2) दूसरी पंक्ति को संदर्भित करता है जब i=1 (चूंकि पंक्ति 1 हेडर है), और 2 दूसरा कॉलम है जहां परिणाम स्टोर होते हैं।

परिणाम लिखने के लिए appendRow का उपयोग करें

क्या होगा यदि आपके पास एक स्प्रेडशीट है जहां आप नए कॉलम के बजाय नई पंक्ति में डेटा लिखना चाहते हैं?

यह appendRow फंक्शन के साथ करना आसान है। यह फंक्शन शीट में मौजूदा किसी भी डेटा को परेशान नहीं करेगा। यह बस मौजूदा शीट में एक नई पंक्ति जोड़ देगा।

उदाहरण के लिए, एक फंक्शन बनाएं जो 1 से 10 तक गिने और एक Counter कॉलम में 2 के गुणक के साथ एक काउंटर दिखाए।

यह फंक्शन इस तरह दिखेगा:

function myFunction() { var sheet = SpreadsheetApp.getActiveSheet(); for (var i = 1; i<11; i++) { var result = i * 2; sheet.appendRow([i,result]); } }

यहां परिणाम हैं जब आप इस फंक्शन को चलाते हैं।

URLFetchApp के साथ RSS फीड प्रोसेस करें

आप पिछले Google Sheets स्क्रिप्ट फंक्शन को URLFetchApp के साथ जोड़कर किसी भी वेबसाइट से RSS फीड खींच सकते हैं, और उस वेबसाइट पर हाल ही में प्रकाशित प्रत्येक लेख के लिए स्प्रेडशीट में एक पंक्ति लिख सकते हैं।

यह मूल रूप से अपना खुद का RSS फीड रीडर स्प्रेडशीट बनाने का एक DIY तरीका है!

इसे करने के लिए स्क्रिप्ट बहुत जटिल नहीं है।

function myFunction() { var sheet = SpreadsheetApp.getActiveSheet(); var item, date, title, link, desc; var txt = UrlFetchApp.fetch("https://www.topsecretwriters.com/rss").getContentText(); var doc = Xml.parse(txt, false); title = doc.getElement().getElement("channel").getElement("title").getText(); var items = doc.getElement().getElement("channel").getElements("item"); // RSS फीड में सिंगल आइटम पार्स करना for (var i in items) { item = items[i]; title = item.getElement("title").getText(); link = item.getElement("link").getText(); date = item.getElement("pubDate").getText(); desc = item.getElement("description").getText(); sheet.appendRow([title,link,date,desc]); } }

जैसा कि आप देख सकते हैं, Xml.parse RSS फीड से प्रत्येक आइटम को निकालता है और प्रत्येक लाइन को शीर्षक, लिंक, तारीख और विवरण में अलग करता है।

appendRow फंक्शन का उपयोग करके, आप RSS फीड में हर एक आइटम के लिए इन आइटम को उपयुक्त कॉलम में रख सकते हैं।

आपकी शीट में आउटपुट कुछ इस तरह दिखेगा:

स्क्रिप्ट में RSS फीड URL को एम्बेड करने के बजाय, आप अपनी शीट में URL के साथ एक फील्ड रख सकते हैं, और फिर कई शीट्स रख सकते हैं - हर उस वेबसाइट के लिए एक जिसे आप मॉनिटर करना चाहते हैं।

स्ट्रिंग्स को जोड़ें और कैरिज रिटर्न जोड़ें

आप कुछ टेक्स्ट मैनिपुलेशन फंक्शन जोड़कर RSS स्प्रेडशीट को एक कदम आगे ले जा सकते हैं, और फिर ईमेल फंक्शन का उपयोग करके साइट के RSS फीड में सभी नई पोस्ट का सारांश अपने आप को ईमेल कर सकते हैं।

ऐसा करने के लिए, पिछले अनुभाग में आपके द्वारा बनाए गए स्क्रिप्ट के तहत, आप कुछ स्क्रिप्टिंग जोड़ना चाहेंगे जो स्प्रेडशीट में सभी जानकारी निकाल दे।

आप "items" ऐरे से सभी जानकारी को पार्स करके विषय पंक्ति और ईमेल टेक्स्ट बॉडी बनाना चाहेंगे जिसका उपयोग आपने RSS डेटा को स्प्रेडशीट में लिखने के लिए किया था।

ऐसा करने के लिए, "items" फोर लूप से पहले निम्नलिखित लाइनें रखकर विषय और संदेश को इनिशियलाइज़ करें।

var subject = 'Latest 10 articles published at mysite.com'
var message = ''

फिर, "items" फोर लूप के अंत में (appendRow फंक्शन के ठीक बाद), निम्नलिखित लाइन जोड़ें।

message = message + title + '\n' + link + '\n' + date + '\n' + desc + '\n' + '\n \n';

"+" सिंबल सभी चार आइटम को एक साथ जोड़ देगा और प्रत्येक लाइन के बाद "\n" कैरिज रिटर्न के लिए। प्रत्येक शीर्षक डेटा ब्लॉक के अंत में, आप अच्छी तरह से फॉर्मेट किए गए ईमेल बॉडी के लिए दो कैरिज रिटर्न चाहेंगे।

एक बार सभी पंक्तियां प्रोसेस हो जाने पर, "body" वेरिएबल पूरे ईमेल संदेश स्ट्रिंग को रखता है। अब आप ईमेल भेजने के लिए तैयार हैं!

Google Apps Script में ईमेल कैसे भेजें

आपके Google Script का अगला भाग "subject" और "body" को ईमेल के माध्यम से भेजना होगा। Google Script में ऐसा करना बहुत आसान है।

var emailAddress = myemail@gmail.com;
MailApp.sendEmail(emailAddress, subject, message);

MailApp Google Apps स्क्रिप्ट के अंदर एक बहुत सुविधाजनक क्लास है जो आपको अपने Google अकाउंट की ईमेल सेवा तक पहुंच प्रदान करती है ताकि ईमेल भेज या प्राप्त कर सकें। इसके लिए धन्यवाद, sendEmail फंक्शन के साथ सिंगल लाइन आपको केवल ईमेल एड्रेस, विषय पंक्ति, और बॉडी टेक्स्ट के साथ कोई भी ईमेल भेजने देती है।

परिणामी ईमेल इस तरह दिखेगा।

किसी वेबसाइट के RSS फीड को निकालने, उसे Google Sheet में स्टोर करने, और URL लिंक के साथ इसे स्वयं को भेजने की क्षमता को मिलाकर, किसी भी वेबसाइट के नवीनतम कंटेंट को फॉलो करना बहुत सुविधाजनक हो जाता है।

यह Google Apps स्क्रिप्ट में उपलब्ध शक्ति का सिर्फ एक उदाहरण है जो कार्यों को स्वचालित करने और कई क्लाउड सेवाओं को एकीकृत करने के लिए है।

  1. Google Smart Lock समझाया: फीचर्स, लाभ और यह सुरक्षा कैसे बढ़ाता है Google Smart Lock समझाया: फीचर्स, लाभ और यह सुरक्षा कैसे बढ़ाता है

    हम सुरक्षित रूप से मान सकते हैं कि दुनिया में कोई भी Google नाम से अनजान नहीं है। दुनिया भर में सबसे बड़ी टेक दिग्गजों में से एक होने के नाते, Google निश्चित रूप से नए और अद्भुत उत्पादों का अग्रणी है जो नवाचार और सुरक्षा दोनों को पूरा करते हैं। Google के पास लाखों उपयोगकर्ताओं का डेटाबेस है और इसने

  1. GDPR के लिए एक व्यापक गाइड: प्रमुख सिद्धांत, अनुपालन और सर्वोत्तम अभ्यास GDPR के लिए एक व्यापक गाइड: प्रमुख सिद्धांत, अनुपालन और सर्वोत्तम अभ्यास

    कैम्ब्रिज एनालिटिका द्वारा फेसबुक उपयोगकर्ताओं के डेटा के दुरुपयोग ने दुनिया भर के लाखों लोगों का ध्यान आकर्षित किया। इसने लोगों को पहले से कहीं अधिक डेटा गोपनीयता और डेटा सुरक्षा के महत्व का एहसास कराया। लोगों में डेटा गोपनीयता और सुरक्षा के बारे में बढ़ती जांच के साथ चिंता बढ़ने के साथ। यूरोपीय सं

  1. Bluetooth 5.1 समझाया: प्रमुख विशेषताएं, लाभ और यह कनेक्टिविटी को कैसे बेहतर बनाता है Bluetooth 5.1 समझाया: प्रमुख विशेषताएं, लाभ और यह कनेक्टिविटी को कैसे बेहतर बनाता है

    तकनीक के मामले में सबसे आगे रहना वास्तव में महत्वपूर्ण है क्योंकि यह हमारे चारों ओर है! जी हां, यह सही है। स्मार्टफोन से लेकर घरेलू उपकरणों से लेकर गैजेट्स तक, तकनीक हमारे जीवन में महत्वपूर्ण भूमिका निभाती है। ब्लूटूथ एक ऐसी उपयोगी तकनीक है जो डेटा साझाकरण को आसान और परेशानी मुक्त बनाती है। डिवाइस क