[英]Google App Script: Cannot find method getRange(number, number)
[英]getRange(cell) not working in google app script
我對腳本還很陌生。 我試圖建立一個Google工作簿來整理來自Google表單的條目。 每個月,表單中的條目都會進入工作簿中的新表。 工作簿中的最后一頁匯總了所有以前的圖紙。
但是,由於無法確定工作表的數量,因此我無法編寫引用所有先前工作表的求和函數。
我現在想構建一個簡單的函數,將所有現有工作表中相同單元格的值求和。
我可以控制新工作表的名稱,因此所有新工作表的名稱均為SMM1,SMM2,SMM3等。
=totalsheets("E17")
給出31,即使所有5張紙都填滿1張E17,這是我寫的腳本 代碼示例:
function totalsheets(cell) {
var sum=0,sname="";
// to find total number of sheets based on fixed 2nd last sheet
var number= SpreadsheetApp.getActiveSpreadsheet().getSheetByName("SMM1").getIndex();
for(var i=1; i<=number; i++)
{
sname="SMM" + i;
var s= SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sname).getRange(cell).getValue();
sum+=s;
}
return sum;
}
試試這個代碼:
function totalsheets(cell) {
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
var sum = 0;
for (var i = 0; i < sheets.length; i++) {
var sheet = sheets[i];
var sheetName = sheet.getName();
if (sheetName.substring(0, 3) == 'SMM') {
var val = sheet.getRange(cell).getValue();
if (typeof(val) == 'number') {
sum += val;
}
}
}
return sum;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.