Lav knapper i et Google Sheet
I denne guide vil jeg fortælle hvordan du laver en knap inde i et Google Sheet, og tildeler et Apps scripts som åbner en form.
Jeg har tidligere skrevet om hvordan du opretter en form i Google Apps Script. I både Excel og LibreOffice er det også muligt at sætte knapper direkte ind i regnearket, og så bruge disse knapper til fx. at åbne en form. Det vil jeg vise dig her hvordan du gør i Google Sheets.
I Google Sheets kan du ikke indsætte controls direkte i regnearket som du kan i Excel eller i LibreOffice. Her skal du tegne en figur, fx. der ligner en knap, og så tildele et Google Apps Script til denne figur.
Indsæt en knap
Det første du gør er derfor at tegne en knap. Dette gør du ved at vælge Indsæt -> Tegning. Her tegner du så selve knappen, fx. som en tekstboks, hvor du sætter en baggrund på og trykker til sidst “Gem og luk”.
Så kommer knappen ind i selve regnearket.
Ved at markere figuren, kan du trykke på de tre knapper og herefter vælge “Tildel script”.
Så skriver du navnet på den funktion, der skal åbne selve formen, når man trykker på knappen. Eller det script der skal aktiveres, når man trykker på knappen.
Lav funktion der åbner en form
Så skal vi have lavet funktionen “openForm” der åbner formen. Dette gør vi ved at vælge Værktøjer -> Scripteditor. Her indsætter jeg så følgende kode fra Kode.gs.
function openForm() { var ss = SpreadsheetApp.getActiveSpreadsheet(), html = HtmlService.createHtmlOutputFromFile('index'); ss.show(html); }
Scriptet her definerer først en variabel ss der svarer til det aktive regneark. Herefter defineres html der svarer til HTML-filen med formen. Og med koden ss.show(html) åbnes formen i denne HTML-fil.
Lav formular
Endelig laver du så HTML-filen med formen i index.html. Dette kan du læse mere om her, hvordan man gør.
Nu kan du så trykke på knappen og herefter vil formen blive åbnet.
Du virker til at have styr på det!
Jeg har brug for hjælp til at lave en knap i sheets, der opdatere mine terningkast i forbindelse med en simuleringsopgave.
Kan du hjælpe