5 Google पत्रक स्क्रिप्ट फ़ंक्शंस जो आपको जानना आवश्यक है
Google पत्रक एक शक्तिशाली क्लाउड-आधारित स्प्रेडशीट उपकरण है, जो आपको Microsoft Excel में लगभग वह सब कुछ करने देता है जो आप कर सकते थे। लेकिन Google शीट की वास्तविक शक्ति Google स्क्रिप्टिंग विशेषता है जो इसके साथ आती है।
Google Apps स्क्रिप्टिंग एक पृष्ठभूमि स्क्रिप्टिंग उपकरण है जो न केवल Google पत्रक में बल्कि Google डॉक्स, जीमेल भी काम करता है। , गूगल विश्लेषिकी, और लगभग हर दूसरे Google क्लाउड सेवा। यह आपको उन व्यक्तिगत ऐप्स को स्वचालित करने देता है, और उनमें से प्रत्येक एप्लिकेशन को एक-दूसरे के साथ एकीकृत करता है।
<आंकड़ा वर्ग = "lazy aligncenter">आंकड़ा>
इस लेख में आप सीखेंगे कि Google Apps स्क्रिप्टिंग के साथ शुरुआत कैसे करें, सेल डेटा को पढ़ने और लिखने के लिए Google शीट में एक मूल स्क्रिप्ट का निर्माण, और सबसे प्रभावी उन्नत Google पत्रक। स्क्रिप्ट फ़ंक्शंस।
Google ऐप्स स्क्रिप्ट कैसे बनाएं
अभी आप Google शीट के अंदर से अपनी पहली Google Apps स्क्रिप्ट बनाना शुरू कर सकते हैं।
ऐसा करने के लिए, मेनू से उपकरणचुनें, फिर स्क्रिप्ट संपादक।
यह स्क्रिप्ट संपादक विंडो खोलता है और एक फ़ंक्शन को डिफॉल्ट करता है जिसे myfunction ()कहा जाता है। strong>। यह वह जगह है जहाँ आप अपनी Google स्क्रिप्ट बना सकते हैं और उसका परीक्षण कर सकते हैं।
In_content_1 all: [300x250] / dfp: [640x360]->
इसे शॉट देने के लिए, एक Google शीट स्क्रिप्ट फ़ंक्शन बनाने का प्रयास करें जो एक सेल से डेटा पढ़ेगा, उस पर एक गणना करेगा और डेटा राशि को दूसरी सेल में आउटपुट कर देगा।
सेल से डेटा प्राप्त करने का कार्य getRange ()और getValue ()फ़ंक्शन है। आप पंक्ति और स्तंभ द्वारा सेल की पहचान कर सकते हैं। इसलिए यदि आपके पास पंक्ति 2 और कॉलम 1 (A कॉलम) में मान है, तो आपकी स्क्रिप्ट का पहला भाग इस तरह दिखेगा:
function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
var row = 2;
var col = 1;
var data = sheet.getRange(row, col).getValue();
}
यह उस मान को संग्रहीत करता है डेटाचर में सेल। आप डेटा पर गणना कर सकते हैं, और फिर उस डेटा को किसी अन्य सेल पर लिख सकते हैं। तो इस फ़ंक्शन का अंतिम भाग होगा:
var results = data * 100;
sheet.getRange(row, col+1).setValue(results);
}
जब आप अपना फ़ंक्शन लिख रहे हों, तो सहेजने के लिए डिस्क आइकन चुनें।
<आंकड़ा वर्ग = "आलसी संरेखण">
पहली बार जब आप दौड़ेंगे इस तरह एक नया Google पत्रक स्क्रिप्ट फ़ंक्शन (रन आइकन का चयन करके), आपको अपने Google खाते को चलाने के लिए स्क्रिप्ट के लिए प्राधिकरण प्रदान करना होगा।
<आंकड़ा वर्ग = "आलसी संरेखण">आकृति>
अनुमतियों को जारी रखने की अनुमति दें। एक बार जब आपकी स्क्रिप्ट चलती है, तो आप देखेंगे कि स्क्रिप्ट ने लक्ष्य सेल पर गणना परिणाम लिखा है।
<आंकड़ा वर्ग = "lazy aligncenter">
अब जब आप जानते हैं कि एक बुनियादी Google Apps स्क्रिप्ट फ़ंक्शन कैसे लिखना है, तो आइए कुछ और उन्नत कार्यों पर नज़र डालें।
Arrays लोड करने के लिए getValues का उपयोग करें
आप अपनी स्प्रैडशीट में डेटा की गणना करने की अवधारणा को सरणियों का उपयोग करके एक नए स्तर पर स्क्रिप्टिंग के साथ ले सकते हैं। यदि आप getValues का उपयोग करके Google Apps स्क्रिप्ट में एक चर लोड करते हैं, तो चर एक सरणी होगी जो शीट से कई मानों को लोड कर सकती है।
function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
डेटा चर एक बहु-आयामी है सरणी जो शीट से सभी डेटा रखती है। डेटा पर गणना करने के लिए, आपलूप के लिए का उपयोग करते हैं। लूप के लिए काउंटर प्रत्येक पंक्ति के माध्यम से काम करेगा, और स्तंभ स्थिर रहता है, उस स्तंभ के आधार पर जहां आप डेटा खींचना चाहते हैं।
हमारे उदाहरण स्प्रेडशीट में, आप तीन पंक्तियों पर गणना कर सकते हैं। डेटा के रूप में इस प्रकार है।
for (var i = 1; i < data.length; i++) {
var result = data[i][0] * 100;
sheet.getRange(i+1, 2).setValue(result);
}
}
इस स्क्रिप्ट को सहेजें और चलाएं जैसे आपने ऊपर किया था। आप देखेंगे कि सभी परिणाम आपकी स्प्रेडशीट के कॉलम 2 में भरे हुए हैं।
<आंकड़ा वर्ग = "lazy aligncenter">आंकड़ा>
आप देखेंगे कि एक सरणी चर में सेल और पंक्ति को संदर्भित करना getRange फ़ंक्शन के साथ अलग है।
डेटा [i] [0]सरणी आयामों को संदर्भित करता है जहां पहला आयाम पंक्ति है और दूसरा स्तंभ है। ये दोनों शून्य पर शुरू होते हैं।
getRange (i + 1, 2)का संदर्भ दूसरी पंक्ति से है जब i = 1 (चूंकि पंक्ति 1 शीर्ष लेख है), और 2 है दूसरा कॉलम जहां परिणाम संग्रहीत किए जाते हैं।
परिणामों को लिखने के लिए परिशिष्ट का उपयोग करें
यदि आपके पास एक स्प्रेडशीट है जहां आप एक नया डेटा लिखना चाहते हैं एक नए कॉलम की बजाय पंक्ति?
यह appendRowफ़ंक्शन के साथ करना आसान है। इस फ़ंक्शन ने शीट में किसी भी मौजूदा डेटा को परेशान नहीं किया। यह केवल मौजूदा शीट में एक नई पंक्ति को जोड़ देगा।
एक उदाहरण के रूप में, एक फ़ंक्शन बनाएं जो 1 से 10 तक गिना जाएगा और काउंटर2 में 2 के गुणकों के साथ एक काउंटर दिखाएगा। मजबूत>कॉलम।
यह फ़ंक्शन इस तरह दिखेगा:
function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
for (var i = 1; i<11; i++) {
var result = i * 2;
sheet.appendRow([i,result]);
}
}
जब आप इस फ़ंक्शन को चलाते हैं तो परिणाम होते हैं।
<आकृति वर्ग = "आलसी संरेखण">
URLFetchApp / / strong के साथ प्रक्रिया RSS फ़ीड
आप किसी भी वेबसाइट से RSS फ़ीड खींचने के लिए पिछले Google पत्रक स्क्रिप्ट फ़ंक्शन और URLFetchAppको जोड़ सकते हैं, और उस वेबसाइट पर हाल ही में प्रकाशित प्रत्येक लेख के लिए एक स्प्रैडशीट में एक पंक्ति लिख सकते हैं
यह मूल रूप से अपने आरएसएस फ़ीड रीडर स्प्रेडशीट बनाने के लिए एक 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");
// Parsing single items in the RSS Feed
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आरएसएस फ़ीड से प्रत्येक आइटम को खींचता है और प्रत्येक पंक्ति को शीर्षक, लिंक, तिथि और विवरण में अलग करता है।
appendRowफ़ंक्शन का उपयोग करके, आप RSS फ़ीड में इन आइटमों को हर एक आइटम के लिए उपयुक्त कॉलम में रख सकते हैं।
आपकी शीट में आउटपुट दिखेगा। कुछ इस तरह से:
<आंकड़ा वर्ग = "lazy aligncenter">
इसके बजाय RSS फ़ीड URL को स्क्रिप्ट में एम्बेड करने के बाद, आप URL के साथ अपनी शीट में एक फ़ील्ड रख सकते हैं, और फिर कई शीट हो सकते हैं - हर उस वेबसाइट के लिए जिसे आप मॉनिटर करना चाहते हैं।
स्ट्रेटेननेट करें और एक गाड़ी जोड़ें रिटर्न
आप कुछ पाठ जोड़तोड़ कार्यों को जोड़कर आरएसएस स्प्रेडशीट को एक कदम आगे ले जा सकते हैं, और फिर सभी नए पदों के सारांश के साथ खुद को एक ईमेल भेजने के लिए ईमेल फ़ंक्शन का उपयोग कर सकते हैं। साइट के RSS फ़ीड में।
ऐसा करने के लिए, आपके द्वारा पिछले अनुभाग में बनाई गई स्क्रिप्ट के तहत, आप कुछ स्क्रिप्टिंग जोड़ना चाहेंगे जो स्प्रेडशीट में सभी जानकारी को निकाल देगी।
आप सब्जेक्ट लाइन और ईमेल टेक्स्ट बॉडी को एक ही "आइटम" सरणी से पूरी जानकारी के साथ बनाना चाहते हैं, जिसे आप आरएसएस डेटा स्प्रेडशीट में लिखते थे।
ऐसा करने के लिए, "आइटम" लूप के लिए निम्नलिखित पंक्तियों को रखकर विषय और संदेश को इनिशियलाइज़ करें।
var subject = ‘Latest 10 articles published at mysite.com’ var message = ‘’
फिर, अंत में। लूप के लिए "आइटम" (एपेंड्रो फ़ंक्शन के ठीक बाद), निम्नलिखित पंक्ति जोड़ें।
message = message + title + '\n' + link + '\n' + date + '\n' + desc + '\n' + '\n \n';
"+" प्रतीक सभी चार वस्तुओं को एक साथ "n" के बाद से समेट देगा। “प्रत्येक लाइन के बाद एक गाड़ी वापसी के लिए। प्रत्येक शीर्षक डेटा ब्लॉक के अंत में, आप एक अच्छी तरह से स्वरूपित ईमेल बॉडी के लिए दो कैरिज रिटर्न चाहते हैं।
सभी पंक्तियों को संसाधित करने के बाद, "बॉडी" चर पूरे ईमेल संदेश स्ट्रिंग को धारण करता है। अब आप ईमेल भेजने के लिए तैयार हैं!
Google Apps स्क्रिप्ट में ईमेल कैसे भेजें
आपके Google स्क्रिप्ट का अगला भाग भेजने के लिए होगा ईमेल के माध्यम से "विषय" और "शरीर"। Google स्क्रिप्ट में ऐसा करना बहुत आसान है।
var emailAddress = [email protected]; MailApp.sendEmail(emailAddress, subject, message);
Google Apps स्क्रिप्ट के अंदर MailApp एक बहुत ही सुविधाजनक वर्ग है जो आपको आपके Google खाते की ईमेल सेवा को भेजने या प्राप्त करने की सुविधा प्रदान करता है। ईमेल। इसके लिए धन्यवाद, SendEmail फ़ंक्शन के साथ सिंगल लाइन आपको कोई भी ईमेल भेजें केवल ईमेल पते, विषय पंक्ति और बॉडी टेक्स्ट के साथ देता है।
यह परिणामी ईमेल जैसा दिखेगा। ।
<आंकड़ा वर्ग = "lazy aligncenter">
निकालने की क्षमता का संयोजन वेबसाइट की RSS फ़ीड, इसे Google शीट में संग्रहीत करें, और इसमें शामिल URL लिंक के साथ स्वयं को भेजें, किसी भी वेबसाइट के लिए नवीनतम सामग्री का पालन करना बहुत सुविधाजनक बनाता है।
यह शक्ति का सिर्फ एक उदाहरण है। Google Apps स्क्रिप्ट में उपलब्ध कार्यों को स्वचालित करने और कई क्लाउड सेवाओं को एकीकृत करने के लिए उपलब्ध है।
Скрипты продаж: конструктор скриптов продаж scenarium.pro (Разбор, 2019) Часть 2