在我的参数集中找不到sheet.getRange
sheet.getRange is not found with my set of parameter
我试图在谷歌电子表格上运行一个脚本,以加快一系列重复操作。根据文档,我可以使用四个数值参数getRange
重载访问一系列数据。我的问题是,当我运行脚本时,谷歌会说找不到getRange(Number,Number,Number)并停止脚本。
这是代码:
function addMonth(){
var month = ["Janvier","Février","Mars","Avril","Mai","Juin",
"Juillet","Août","Septembre","Octobre","Novembre","Décembre"];
var days = ["po","wr","sr","cz","pl","so","nd"];
var dateString = Browser.inputBox('Enter the month with format "mm-yyyy"');
var date = new Date(dateString.split("-")[1],dateString.split("-")[0]-1,1);
var dateFin = new Date(dateString.split("-")[1],dateString.split("-")[0]-1,0);
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var pos =sheet.getLastColumn();
sheet.insertColumnsAfter(pos,dateFin.getDate());
var monthRange = sheet.getRange(1,parseInt(pos+1),1,parseInt(dateFin.getDate()));
monthRange.merge();
monthRange.setValue(month[dateDebut.getMonth()]);
var daysOfMonth = [];
for(var i=1;i<=dateFin.getDate();i++){
daysOfMonth.push(days[date.getDay()+(i%7)-1]);
}
sheet.getRange(2,parseInt(pos+1),1,parseInt(dateFin.getDate())).setValues(daysOfMonth);
}
错误消息说的是实话。您的变量sheet
属于Class Spreadsheet,它没有方法getRange(row, column, numRows, numColumns)
,即Class Sheet的方法。
更改变量sheet
的赋值以确保其类型正确:
var sheet = SpreadsheetApp.getActiveSheet();
在编写脚本时,请注意自动完成功能,这将有助于避免此错误。有关更多详细信息,请参阅前面的回答。
相关文章:
- 来自单个Google Sheet的多个图表赢得't显示
- Google Sheet自定义函数返回0
- getRange(单元格)在谷歌应用程序脚本中不起作用
- JavaScript sprite sheet
- 如何处理 ExtJs 中的异常“无法调用方法 getRange of null”
- 在我的参数集中找不到sheet.getRange
- Javascript Excel Sheet
- 谷歌脚本/javascript |为什么getRange返回2D数组
- Google-Script GetRange乘法而不是加法
- 在Google Drive / Google Sheet中重命名文件
- Google Sheet Script在循环过程中出现Null错误
- 无法将Handlebars.js每个助手与Tabletop.js获取的Google Sheet提要一起使用
- getRange、getDataRange和getActiveRange之间的差异