5 Shaqooyinka Qoraalka Xaashiyaha Google ee aad u baahan tahay inaad ogaato

Google Sheets waa qalab faafin ku salaysan daruur oo awood badan kaas oo kuu ogolaanaya inaad ku samayso wax kasta oo aad ku samayn karto Microsoft Excel . Laakin awooda dhabta ah ee Google Sheets waa qaabka qoraalka Google(Google Scripting) ee la socota.

Qorista Google Apps(Google Apps) waa qalab qoraal ah oo aan ka shaqayn oo keliya Google Sheets(in Google Sheets) , laakiin sidoo kale Google Docs, Gmail, Google Analytics , iyo ku dhawaad ​​adeeg kasta oo kale oo Google ah. Waxay kuu ogolaanaysaa inaad otomaatig u samayso abkaas gaarka ah, oo aad mid kasta oo ka mid ah abkaas isku xidho midba midka kale.

Maqaalkan waxaad ku baran doontaa sida loogu bilaabo Google Apps scripting, samaynta qoraal aasaasi ah oo Google -ka ah si aad u akhrido oo u qorto xogta unugga, iyo hawlaha qoraalka (Google Sheets)Google(Google Sheets) ee horumarsan ee ugu waxtarka badan .

Sida loo Sameeyo Qoraalka Apps Google(How to Create a Google Apps Script)

Waxaad hadda bilaabi kartaa abuurista qoraalka Google Apps ee ugu horreeya gudaha Google Sheets

Si tan loo sameeyo, ka dooro Tools ka menu, ka dibna Script Editor .

Tani waxay fureysaa daaqada tifaftiraha qoraalka waxayna kuxirantahay shaqada la yiraahdo myfunction() . Tani waa meesha aad ka abuuri karto oo aad tijaabin karto qoraalkaaga Google(Google Script) .

Si aad u siiso tallaal, isku day inaad abuurto shaqo qoraal Google Sheets oo akhrin doonta xogta hal unug, ku samee xisaabin, oo u soo saari doonta cadadka xogta unug kale.

Shaqada laga helo xogta unuggu waa shaqooyinka getRange()(getRange()) iyo getValue() . Waxaad ku garan kartaa unugga saf iyo tiir. Haddaba haddii aad qiima ku leedahay safka 2 iyo tiirka 1 (Tiirarka A), qaybta hore ee qoraalkaagu waxay u ekaan doontaa sidan:

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

Tani waxay ku kaydisaa qiimaha unuggaas doorsoomiyaha xogta . (data)Waxaad samayn kartaa xisaabinta xogta, ka dibna ku qor xogtaas unug kale. Markaa qaybta ugu dambeysa ee shaqadani waxay noqon doontaa:

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

Marka aad dhammayso qorista shaqadaada, dooro calaamadda saxanka si aad u kaydiso. 

Marka ugu horraysa ee aad samayso hawl cusub oo Google Sheets ah oo sidan oo kale ah (adoo dooranaysa astaanta run), waxaad u baahan doontaa inaad bixiso Oggolaanshaha(Authorization) qoraalka si uu ugu shaqeeyo Koontadaada Google(Google Account) .

Oggolow ogolaanshaha inay sii socdaan Marka qoraalkaagu socdo, waxaad arki doontaa in qoraalku u qoray natiijooyinka xisaabinta unugga la beegsanayo.

Hadda oo aad taqaanid sida loo qoro shaqada aasaasiga ah ee Google Apps , aynu eegno qaar ka mid ah hawlaha horumarsan.

Isticmaal getValues ​​si aad u soo dejiso qalabyada(Use getValues To Load Arrays)

Waxaad ku qaadan kartaa fikradda xisaabinta xogta ku jirta xaashidaada warqad qoraal ah oo heer cusub ah adiga oo isticmaalaya arrays. Haddii aad ku shubato doorsoome qoraalka Google Apps adiga oo isticmaalaya getValues, doorsoomuhu waxa uu noqonayaa hannaan ka soo rari kara qiimayaal badan xaashida.

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

Doorsoomka xogtu waa hannaan dhinacyo badan leh oo haysa dhammaan xogta xaashida. Si aad u samayso xisaabinta xogta, waxaad isticmaashaa loop(for) . Miisaanka loop-ku wuxuu ka shaqayn doonaa saf kasta, tiirkuna wuxuu ahaanayaa mid joogto ah, oo ku salaysan tiirka meesha aad rabto inaad xogta jiiddo.

Tusaalahayaga xaashida faafinta, waxaad samayn kartaa xisaabinta saddexda saf ee xogta sida soo socota.

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

Kaydi(Save) oo u socodsii qoraalkan sida aad kor ku samaysay. Waxaad arki doontaa in dhammaan natiijooyinka ay ka buuxaan tiirka 2 ee xaashidaada.

Waxaad ogaan doontaa in tixraaca unugga iyo safka doorsoomayaasha array ay ka duwan yihiin shaqada getRange. 

xogta[i] [0](data[i][0]) waxa ay tilmaamaysaa cabbirada habaynta halka cabbirka koowaad uu yahay safka kan labaadna uu yahay tiirka. Labadani waxay ku bilowdaan eber.

getRange(i+1, 2) waxa ay tilmaamaysaa safka labaad marka i=1 (maadaama safka 1 uu yahay madaxa), iyo 2 waa tiirka labaad ee natiijada lagu kaydiyo.

Isticmaal appendRow si aad u qorto natiijooyinka(Use appendRow To Write Results)

Maxaa dhacaya haddii aad haysatid xaashida faafinta oo aad rabto inaad ku qorto xogta saf cusub halkii aad ka qori lahayd tiir cusub?

Tani way fududahay in lagu sameeyo shaqada appendRow . Shaqadani ma dhibayso wax xog ah oo xaashida ku jirta. Waxay kaliya ku dhejin doontaa saf cusub xaashida hadda jirta.

Tusaale ahaan, samee shaqo tirin doonta 1 ilaa 10 oo tus xisaabiye leh 2 dhufasho oo ku jira tiirka counter .

Shaqadani waxay u ekaan doontaa sidan:

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

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

Waa kuwan natiijooyinka marka aad hawshan waddo.

Ku socodsii quudinta RSS ee URLFetchApp(Process RSS Feeds With URLFetchApp)

Waxaad isku dari kartaa shaqada qoraalka Google Sheets ee hore iyo URLFetchApp si aad feed RSS ka soo jiidato degel kasta, oo aad saf ugu qorto xaashida xaashida maqaal kasta oo dhawaan lagu daabacay mareegahaas.

Tani asal ahaan waa hab DIY ah si aad u abuurto xaashida akhristaha quudiyahaaga RSS !

Qoraalka si tan loo sameeyo isna aad uma dhib badna.

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]);
}
}

Sida aad arki karto, Xml.parse waxa(Xml.parse) ay shay kasta ka soo saartaa quudka RSS oo u kala saarayaa sadar kasta ciwaanka, isku xidhka, taariikhda iyo sharaxaada. 

Adigoo isticmaalaya shaqada appendRow , waxaad walxahan gelin kartaa tiirar ku habboon shay kasta oo ku jira quudinta RSS .

Wax-soo-saarka xaashidaadu waxay u ekaan doontaa sidan:

Halkii aad ku dhejin lahayd URL -ka (URL)RSS -ka qoraalka, waxaad ku yeelan kartaa beer xaashida URL- ka ah , ka dibna aad haysato xaashiyo badan - mid ka mid ah shabakad kasta oo aad rabto inaad la socoto.

Xadhkaha isku xidha(Concatenate Strings) oo ku dar(Add) soo laabashada gaadhiga(Carriage Return)

Waxaad qaadi kartaa tallaabo dheeraad ah xaashida RSS -ka adiga oo ku daraya qaar ka mid ah hawlaha wax-is-daba-marinta qoraalka ah, ka dibna adeegso hawlaha iimaylka si aad isugu dirto iimaylka oo kooban dhammaan qoraallada cusub ee bogga RSS feed.

Si tan loo sameeyo, hoosta qoraalka aad ku abuurtay qaybta hore, waxaad u baahan doontaa inaad ku darto qoraalo ka soo saari doona dhammaan macluumaadka ku jira xaashida xaashida. 

Waxaad u baahan doontaa inaad dhisto khadka mawduuca iyo qoraalka iimaylka adiga oo si wada jir ah u kala saaraya dhammaan macluumaadka laga soo qaatay isku diyaarsanaanta “alaabta” ee aad u isticmaashay inaad ku qorto xogta  RSS xaashida.(RSS)

Si aad tan u samayso, billow mawduuca iyo fariinta adigoo saaraya sadarradan soo socda "alaabta" Loop.

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

Ka dib, dhamaadka "alaabta" loop (laakin ka dib shaqada appendRow), ku dar xariiqda soo socota.

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

Astaanta "+" waxay isku xiri doontaa dhammaan afarta shay oo ay ku xigto "" soo noqoshada qaadida ka dib sadar kasta. Dhammaadka xannibaadda xogta cinwaan kasta, waxaad u baahan doontaa laba soo celin oo gaadhi-qaad ah oo loogu talagalay jidhka iimaylka si fiican loo qaabeeyey.

Marka dhammaan safafka la habeeyo, doorsoomaha "jirka" wuxuu hayaa dhammaan xargaha fariinta iimaylka. Hadda waxaad diyaar u tahay inaad dirto iimaylka!

Sida loogu soo diro iimaylka qoraalka Apps Google(How To Send Email In Google Apps Script)

Qaybta xigta ee Google Script waxay noqon doontaa inaad "mawduuca" iyo "jirka" ku dirto iimaylka. Ku samaynta tan Google Script waa mid aad u fudud.

var emailAddress = [email protected];
MailApp.sendEmail(emailAddress, subject, message);

MailApp - ku waa fasal aad ugu habboon gudaha qoraallada Apps-ka Google(Google Apps) kaas oo ku siinaya marin u helka adeegga iimaylka Koontadaada Google si aad u dirto ama u hesho iimaylo. Mahadsanid tan, xariiqda kaliya ee leh shaqada diritaankaEmailku waxay kuu ogolaanaysaa inaad dirto iimayl kasta(send any email) oo wata ciwaanka iimaylka, khadka mawduuca, iyo qoraalka jidhka.

Tani waa waxa iimaylka ka soo baxay uu u ekaan doono. 

Isku-dubarid awoodda lagu soo saaro bogga RSS -ka ee bogga , ku kaydi xaashida Google(Google Sheet) , oo u soo dir naftaada URL-yada(URL) ku jira, waxay ka dhigaysaa mid aad u habboon in la raaco nuxurka ugu dambeeya ee shabakad kasta.

Kani waa hal tusaale oo kaliya ee awooda laga heli karo qoraalada Apps Google(Google Apps) si loo toosiyo ficilada iyo isku dhafka adeegyada daruuraha badan.



About the author

Waxaan ahay khabiir kombuyuutar waxaanan dadka ku caawinayey pc ilaa 2009. Xirfadahayga waxaa ka mid ah iphone, software, qalabyada, iyo in ka badan. Waxaan sidoo kale macalinimo ka shaqaynayay afartii sano ee la soo dhaafay. Waqtigaas, waxaan bartay sida dadka looga caawiyo inay bartaan barnaamijyo cusub iyo sida loo isticmaalo qalabkooda hab xirfadeed. Waxaan ka helaa talooyin ku saabsan sidii aan u horumarin lahaa xirfadeyda si qof walba uu ugu guuleysto shaqada ama dugsiga.



Related posts