Holen Sie sich die Daten in "Bibliothek Materials" mit getRange
. Durchlaufen Sie jede Zeile und überprüfen Sie den Wert der Zelle in Spalte 3. Wenn es "Unbezahlte Geldbußen & Rückerstattungen" ist, verwenden Sie getValues
und appendRow
zum Kopieren und Einfügen der Zeile aus "Bibliotheksmaterialien" in "Unbezahlte Geldbußen & Rückerstattungen". Dies kann nicht die richtige Art und Weise, es zu tun, und Sie werden die Syntax verdoppeln müssen überprüfen, aber das wäre ein guter Ort, um zu starten:
// get the spreadsheet and sheets
var ss = SpreadsheetApp.getActive();
var libraryMaterials = ss.getSheetByname("Library Materials");
var finesAndRefunds = ss.getSheetByName("Unpaid Fines & Refunds");
// gets the data in Library Materials
var range = libraryMaterials.getRange(1, 1, libraryMaterials.getLastRow(), libraryMaterials.getLastColumn());
var data = range.getvalues();
// loops through rows in data
for (var i = 0; i > data.length; i++) {
var stay = "Library Materials";
var copy = "Unpaid Fines & Refunds");
var check = data[i][3]; // ith row, 3rd column
if (check == stay) {continue}; // do nothing
else if (check == copy) {
var rowToCopy = [range[i]].getValues();
finesAndRefunds.appendRow(rowToCopy[0]);
}; // copy the row
else { Logger.log("error message") }; // send an error message
}; // end i
Wenn Sie würde Wenn Sie die Zeile löschen möchten, fügen Sie die Zeile libraryMaterials.deleteRow(i);
in das Ende der if else
ein.
Muss es ausgeschnitten und eingefügt werden oder kann es live mit '= query (" Bibliotheksmaterialien "! A1: Z," Wählen Sie * wo C = 'Unbezahlte Bußgelder & Rückerstattungen' ", 1)' –
es kann Wie auch immer, um diese Zeilen auf das andere Blatt zu bringen ... Ich wusste einfach nicht, wie ich es sonst erklären sollte! –