Google Sheets Apps 脚本自动填充公式语法错误
Google Sheets Apps Script Autofill Formula Syntax Error
我正在尝试创建一个脚本,该脚本将使用我拥有的公式自动填充 G 列。
到目前为止,这是我的代码:
function autofill() {
// Activate sheet
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// Insert formula in first row
ss.getRange("G2").setFormula("=IF(REGEXMATCH(E2,"No"),0,IF(REGEXMATCH(F2,"No"),1,2))");
// Get number of last row
var lastrow = ss.getLastRow();
// Fill formula to last row
// getRange(row number, col number, number of rows, number of cols)
var fillDownRange = ss.getRange(2, 7, lastrow-1);
ss.getRange("G2").copyTo(fillDownRange);
}
我一直收到错误消息:
SyntaxError: missing ) after argument list (line 6, file "Code.gs")
顺便说一句,第 6 行是:
ss.getRange("G2").setFormula("=IF(REGEXMATCH(E2,"No"),0,IF(REGEXMATCH(F2,"No"),1,2))");
有什么建议吗?提前致谢!!
这样试试:
function autofill() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
sh.getRange("G2").setFormula('=IF(REGEXMATCH(E2,"No"),0,IF(REGEXMATCH(F2,"No"),1,2))');
var fillDownRange=sh.getRange(2,7,sh.getLastRow()-1);
sh.getRange("G2").copyTo(fillDownRange);
}
我正在尝试创建一个脚本,该脚本将使用我拥有的公式自动填充 G 列。
到目前为止,这是我的代码:
function autofill() {
// Activate sheet
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// Insert formula in first row
ss.getRange("G2").setFormula("=IF(REGEXMATCH(E2,"No"),0,IF(REGEXMATCH(F2,"No"),1,2))");
// Get number of last row
var lastrow = ss.getLastRow();
// Fill formula to last row
// getRange(row number, col number, number of rows, number of cols)
var fillDownRange = ss.getRange(2, 7, lastrow-1);
ss.getRange("G2").copyTo(fillDownRange);
}
我一直收到错误消息:
SyntaxError: missing ) after argument list (line 6, file "Code.gs")
顺便说一句,第 6 行是:
ss.getRange("G2").setFormula("=IF(REGEXMATCH(E2,"No"),0,IF(REGEXMATCH(F2,"No"),1,2))");
有什么建议吗?提前致谢!!
这样试试:
function autofill() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
sh.getRange("G2").setFormula('=IF(REGEXMATCH(E2,"No"),0,IF(REGEXMATCH(F2,"No"),1,2))');
var fillDownRange=sh.getRange(2,7,sh.getLastRow()-1);
sh.getRange("G2").copyTo(fillDownRange);
}