我想创建一个函数,迭代每张工作表直到给定的工作表。该函数接收最后一个工作表的名称作为参数。
function getUntilMonthSavings(month) {
var spreadsheet = SpreadsheetApp.getActive();
var monthSheet = spreadsheet.getSheetByName(month);
var allSheets = spreadsheet.getSheets();
var sheetNumber = monthSheet.getIndex();
var totalSavings=0;
for (var i = 1; i < monthSheet; i++){
totalSavings = totalSavings + allSheets[i].getRange("I20").getValue();
}
return totalSavings;
}
我的问题是返回的内容始终为0.我还返回 i 来检查它是否正在迭代,但即使表单索引大于1,它也会返回1。 / p>
我肯定会做一些基本的错误,但我很不知道为什么这段代码不起作用。
答案 0 :(得分:0)
MonthSheet是一个对象,而不是你可以在循环中比较我的东西。您需要参考的工作表的实际索引。
尝试: for(var i = 0; i&lt; monthSheet.getIndex(); i + = 1){