Capitolul 3 Studiu de caz: ordonarea tabelului lunar de vânzări ・ MISIUNE 11

Misiune 11: Scrie coloana de rezultat dintr-odată (setValues)

📋 Lista de misiuni

Sarcină

Scrie „Mare” la categoria fiecărui rând cu suma de cel puțin 100.000. În loc să scrii rând cu rând, citește coloana dintr-odată și scrie-o dintr-odată.

Vânzări octombrie - Foi de calcul Google
Vânzări octombrie

Pentru exercițiu, tabelul revine la starea inițială înaintea fiecărei rulări (o foaie reală nu revine. Modificările unui script se pot anula uneori cu Ctrl+Z, dar nu toate odată).

Apps ScriptProiect fără titluImplementați ▾
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 ? 'Mare' : '']);
sheet.getRange(2, 5, , 1).(labels);
}
Ctrl+S: salvează · Ctrl+R: rulează (editor) · F5: redeschide

Capitolul 3 ・ MISIUNE 11

Scrie coloana de rezultat dintr-odată (setValues)

Scrie „Mare” la categoria fiecărui rând cu suma de cel puțin 100.000. În loc să scrii rând cu rând, citește coloana dintr-odată și scrie-o dintr-odată.

Acum
Scop

Citirea codului

sheet.getRange(2, 4, lastRow - 1, 1).getValues();
Citește dintr-odată lastRow - 1 rânduri și 1 coloană (coloana sumelor), începând de la rândul 2, coloana 4.
amounts.map((row) => [row[0] >= 100000 ? 'Mare' : '']);
Creează o matrice cu „Mare” pentru rândurile de cel puțin 100.000 și gol pentru celelalte. condiție ? A : B este un mod de a scrie if pe un rând.
sheet.getRange(2, 5, labels.length, 1).setValues(labels);
Scrie labels dintr-odată în coloana E, pe atâtea rânduri câte are labels.

Citește dintr-odată cu getValues, transformă rând cu rând cu map și scrie dintr-odată cu setValues. E mai rapid decât celulă cu celulă; nici mii de rânduri nu te fac să aștepți. Dacă intervalul și matricea au număr diferit de rânduri, apare eroarea „The number of rows in the data does not match …”.

Cum începi cu GAS și codul folosit des sunt explicate într-un articol.Ce este GAS? Cum începi și cod folosit des

Codul pe care îl scrii rulează într-un spațiu izolat din această pagină. Nu ajunge în afara paginii sau pe alte site-uri.

* Aceasta este o simulare a comportamentului Foilor de calcul Google și al Apps Script și poate diferi în parte de original.

* Foi de calcul Google este o marcă a Google LLC. Acest site nu este afiliat cu Google.