【发布时间】:2018-09-05 07:54:54
【问题描述】:
我对编码非常陌生,并且在编写这段代码时非常吃力。我希望有人可以帮助我。这是我想要完成的事情:
当“为吉姆审查的 2018 年 2 周快照”的第 19 列(“S”)中放置“y”或“Y”时,我想复制该行的 B:G 和 J:R 列。
将复制的行放在另一个名为“会计”的电子表格中,并在 C:Q 列上有一个名为“未处理的帐户数据”的标签。
然后我需要在粘贴的“JT”行的 B 列中写入。
最后,将原来的“y”更新为“Copied”。
这是两个测试文档的链接,以防万一。
function myFunction(e) {
var sourceSheetName = "Reviewed 2018 2 Week Snapshot for Jim";
var destinationSpreadsheetId = "1l1f6SrN7d6hYDhfv8W_ne15vAd7xSJlC6138jpoXpC4";
var destinationSheetName = "Unprocessed Acct Data";
if (e.source.getSheetName() == sourceSheetName && e.range.getcolumn() == 19 && e.value.toUpperCase() == "Y") {
var sourceValues = e.source.getRange("B:G" && "J:R").getValues().filter(function(e){return e.filter(String).length > 0});
var tss = SpreadsheetApp.openById(destinationSpreadsheetId);
var ts = tss.getSheetByName(destinationSheetName);
ts.getRange(ts.getLastRow() + 1, 1, sourceValues.length, sourceValues[0].length).setValues(sourceValues);
}
}
【问题讨论】:
标签: google-apps-script google-sheets google-sheets-api