En nybegynnerguide for Google Sheets Script
Google Ark Google Helt / / August 07, 2020
Sist oppdatert den
Med Google Scripts kan du legge til kode i regnearket ditt for å automatisere dataregistrering, bringe eksterne data inn i arkene dine, eller kjøre beregninger med jevne mellomrom.
Hvis du bruker Google Sheets, kan du være interessert i å vite at Google Scripts kan forbedre regnearkene dine.
Tenk på Google Scripts som VBA i Microsoft Excel. Den lar deg legge til kode i regnearket ditt for å automatisere dataregistrering. Du kan også bruke dem til å ta med eksterne data i arkene dine. Det beste av alt er at du kan kjøre beregninger på en periodisk plan, selv når du ikke har regnearket åpent.
I denne artikkelen lærer du hvordan du aktiverer Google Scripts og hvordan du skriver og kjører et enkelt skript.
Slik bruker du Google-skript
Det er noen få ting i Google Sheets som du må aktivere før du kan begynne å skrive Google Scripts der.
Velg Verktøy-menyen og velg Manusredaktør fra menyen.
Dette vil åpne Google Scripts-redaktøren i et prosjektvindu uten navn.
Dette skriptet er faktisk inne i Google-kontoen din i Google Skripts-verktøyet. Dette bestemte prosjektet er koblet til regnearket du jobber med for øyeblikket.
Du kan skrive et skript, men kan ikke kjøre det før skript faktisk er aktivert i arket. Du må gjøre dette første gang du kjører det (som du ser nedenfor).
La oss lage et enkelt skript for å se dette i aksjon.
Lag ditt første Google-skript
I dette eksemplet skal du skrive et manus som legger opp alle quiz- og slutteksamen for B-kolonnen (Chris's score).
Dette er regnearket.
Tilbake i Google Scripts-vinduet, lim inn følgende kode i funksjonen myFunction () krøllete parenteser, slik:
funksjon myFunction () {
var ss = SpreadsheetApp.getActiveSpreadsheet ();
var ark = ss.getSheets () [0] var område = ark.getRange (2,2,5);
var verdier = område.getValuer ();
var sum = 0
for (var rad i verdier) {
for (var col i verdier [rad]) {
sum = verdier [rad] [col] + sum;
}
}
ark.getRange (7,2) .setValue (sum);
}
Denne koden kan se komplisert ut, men la oss dele nøyaktig hva den gjør. Det er enklere enn det ser ut.
La oss bryte denne koden ned en linje om gangen.
Definere variablene
1. var ss = SpreadsheetApp.getActiveSpreadsheet ();
Denne linjen henter det gjeldende regnearket som er aktivt. Siden du bare kjører dette skriptet når regnearket du vil kjøre beregningen på, er aktivt, får det alltid riktig regneark. Arket blir lagret som en "objekt" -variabel kalt "ss".
2. var ark = ss.getSheets () [0]
Dette får det første arket og lagrer det som en objektvariabel med navnet ark. Det er en alternativ funksjon du kan bruke for å få arket etter arketavnet.
Slik ville det være var ark = ss.getSheetByName (“Ark1”);
Du kan bruke en av funksjonene du liker.
3. var område = ark.getRange (2,2,5);
Denne funksjonen får et utvalg av verdier etter rad, kolonne og antall rader. I dette tilfellet trekker vi alle verdiene som starter på den andre raden, den andre kolonnen og får verdiene fem rader ned.
Variabelen "rekkevidde" blir det som kalles en "matrise". En matrise er en variabel som inneholder flere verdier. I Google Script refererer du til noen av disse numrene ved å bruke et spesielt adresseringsskjema med parenteser, som du vil se nedenfor.
4. var verdier = område.getValuer ();
Funksjonen getValues () trekker faktisk verdiene fra rekkevidden objektet du har definert over.
5. var sum = 0
Dette er bare en enkelt tallvariabel som vi initialiserer med tallet 0. Dette blir starten på hvordan vi skal oppsummere alle tallene i kolonnen.
Opprette For Loops
6. for (var rad i verdier) {
Dette er det som kalles en "For" -sløyfe. Denne typen loop går gjennom et spesifikt antall elementer i en liste. I dette tilfellet vil det gå gjennom verdiene som vi diskuterte ovenfor. Denne første sløyfen vil sløyfe gjennom alle radene i matrisen. I dette tilfellet vil det bare være en.
Merk: matriserader er ikke det samme som regnearkrader. Når matrisen lastet inn verdiene fra kolonnen i regnearket, satte de dem inn i en enkelt linje (eller rad) med data, slik: “89, 92, 78, 98, 89”. Så i dette tilfellet har matrisen en linje (rad) og fem tall på tvers (kolonner).
7. for (var col i verdier [rad]) {
Dette sekundet for loop vil gå gjennom alle "rader" i matrisen. I dette tilfellet går det gjennom alle fem verdiene.
8. sum = verdier [rad] [col] + sum;
Hver gang sløyfen kjører, fortsetter denne uttalelsen å legge summen av den nye verdien til seg selv. Når alle 5 løkkene skjer, skal alle 5 tallene legges inn i variabelen "sum".
9 ark.getRange (7,2) .setValue (sum);
Dette er en uttalelse med to funksjoner. GetRange-funksjonen peker til cellen på den 7. raden og den andre kolonnen. SetValue-funksjonen plasserer deretter verdien på "summen" -variabelen i den cellen.
Nå som du forstår hvordan hver linje i koden fungerer, er det på tide å se det hele i aksjon.
Lagre Google-skriptet ditt
Når du er ferdig med å skrive inn Google-skriptet ditt, er det på tide å lagre det og gå gjennom koden. Skriv først over "Untitled project" for å gi prosjektet et navn. Velg deretter diskettikonet i menyen for å lagre skriptet.
Det kan hende du ser en feil når du prøver å lagre. Ikke få panikk. Dette er faktisk en del av feilsøkingsprosessen. Vær nøye med linjenummeret der det står at du har en feil. Se nøye gjennom koden din og løse eventuelle skrivefeil eller syntaksfeil du måtte ha.
I dette eksemplet manglet "for" -sløyfen på linje 8 åpningssymbolet "("). Når du er løst, kan du prøve å lagre igjen. Når du har lagret koden din, vurderer Google kodesyntaxen din som ok.
Dette betyr ikke at koden din vil fungere som den er ment, den betyr bare at den kan "kompilere" fint, uten syntaksproblemer.
Kjører Google-skriptet
Velg nå avspillingsikonet øverst for å gå gjennom koden. Siden dette er første gang du kjører det nye skriptet ditt, må du gi Google Script-appen tillatelse til å få tilgang til regnearket (dataene) på Google-kontoen din. Å velge Gå gjennom tillatelser i popup-vinduet.
Du må logge på Google-kontoen din. Og siden dette er en tilpasset app og ikke en som er registrert hos Google, vil du se en advarsel om at appen ikke er bekreftet. Velg Avansert koble til, og velg deretter Gå til Google Googles prøveeksempel (utrygg) å fortsette.
På neste skjermbilde må du velge Tillate for å gi Google Script tilgang til Google-kontoen din. Når du har gjort det, kjører skriptet.
Hvis du ikke ser noen feil, bytter du tilbake til regnearket, og du bør se resultatene fra skriptet ditt har vist seg nederst i den første kolonnen.
Skrive avanserte Google-skript
Dette var et veldig grunnleggende Google-skript som ganske enkelt la opp cellene i en enkelt kolonne. Hvis du ønsket å legge til variabler til de to For loops i koden, kan du også gå gjennom alle kolonnene og gi et sammendrag i rad 7 for alle dem.
Google Scripts tilbyr alle mulige muligheter, som sende e-post fra et regneark. Du kan til og med benytte deg av spesielle Google APIer som lar deg integrere andre Google-apper som Gmail, Kalender og til og med Google Analytics. Når du begynner å lære å skrive Google-skript, er mulighetene uendelige.