Kapitel 3 Fallstudie: städa upp månadens försäljningstabell ・ MISSION 12

Uppdrag 12: Kör från en egen meny (onOpen)

📋 Uppdragslista

Uppgift

Se till att en meny ”Månadsbokslut” visas när kalkylarket öppnas och att ”Markera stora affärer” kör markLarge. Ladda om webbläsaren (F5) efter att du sparat och kör från menyn.

Försäljning oktober - Google Kalkylark
Försäljning oktober

För övningens skull återgår tabellen till startläget före varje körning (ett riktigt kalkylark gör inte det. Ändringar från ett skript kan ibland ångras med Ctrl+Z, men inte alla på en gång).

Apps ScriptNamnlöst projektDriftsätt ▾
function onOpen() {
SpreadsheetApp.getUi()
.('Månadsbokslut')
.addItem('Markera stora affärer', '')
.();
}
function markLarge() {
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
const amounts = sheet.getRange(2, 4, lastRow - 1, 1).getValues();
const labels = amounts.map((row) => [row[0] >= 100000 ? 'Stor' : '']);
sheet.getRange(2, 5, labels.length, 1).setValues(labels);
}
Ctrl+S: spara · Ctrl+R: kör (redigeraren) · F5: öppna igen

Kapitel 3 ・ MISSION 12

Kör från en egen meny (onOpen)

Se till att en meny ”Månadsbokslut” visas när kalkylarket öppnas och att ”Markera stora affärer” kör markLarge. Ladda om webbläsaren (F5) efter att du sparat och kör från menyn.

Nu
Mål (kör från menyn ”Månadsbokslut”)

Läsa koden

function onOpen() {
En funktion som körs automatiskt när kalkylarket öppnas. Byter du namn körs den inte.
SpreadsheetApp.getUi().createMenu('Månadsbokslut')
Skapar en meny som heter ”Månadsbokslut” på skärmen (Ui).
.addItem('Markera stora affärer', 'markLarge')
Lägger till en post. Ett klick kör funktionen markLarge.
.addToUi();
Visar den färdiga menyn i menyraden.

En funktion som heter onOpen körs automatiskt när kalkylarket öppnas. Lägger du till en meny här kan även de som aldrig öppnar Apps Script köra uppgiften från menyn. Passar kalkylark som hela teamet använder.

Hur du kommer i gång med GAS och vanlig kod beskrivs i en artikel.Vad är GAS? Komma i gång och vanlig kod

Koden du skriver körs på en isolerad plats inne på den här sidan. Den når inte utanför sidan eller andra webbplatser.

* Detta är en simulering av hur Google Kalkylark och Apps Script fungerar och kan delvis skilja sig från originalet.

* Google Kalkylark är ett varumärke som tillhör Google LLC. Den här webbplatsen har ingen koppling till Google.