GoogleAppheets中的GoogleAppScript
以下代码正常工作,直到我尝试在循环后执行任何操作。它正确记录了“---- CUT HERE ----”这一行的值。但在记录行号后,我无法让它执行下一个任务。我错过了什么?
function FORMATKPIREPORT() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var dataRange = sheet.getDataRange();
var values = dataRange.getValues();
for (var i = 0; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
if (values[i][j] == "----CUT HERE----") {
var cuthere = i+1;Logger.log(cuthere);return i+1;
}
}
}
var lastrow = sheet.getLastRow();
Logger.log(lastrow);
}
现在我知道CutHere行是什么,我想找到LastRow。
答案 0 :(得分:1)
您无法获得"--------Cut here--------"
之后的任何内容的原因是您使用return
语句终止该行之后的代码
所以在以下一行:
var cuthere = i+1;Logger.log(cuthere);return i+1;
return终止代码,使用break代替退出循环。
function FORMATKPIREPORT() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var dataRange = sheet.getDataRange();
var values = dataRange.getValues();
for (var i = 0; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
if (values[i][j] == "----CUT HERE----") {
var cuthere = i+1;Logger.log(cuthere);break;
}
}
}
var lastrow = sheet.getLastRow();
Logger.log(lastrow);
}