Google Sheets Apps Script AddPosition函数SyntaxError错误排查求助
问题原因
你的代码存在2处语法错误,直接触发了Unexpected identifier报错:
if判断结构不合法:最后一个校验条件credit==""末尾多写了多余的||运算符,同时没有用右括号)闭合整个if判断的条件部分,直接接了左大括号{,语法结构完全不符合JS规范- 代码混入了非法标记:第23行前后的
**是Markdown加粗格式标记,不属于Google Apps Script的合法语法,引擎无法识别
修复后的完整代码
function AddPosition() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var dashboard = ss.getSheetByName("Dashboard"); var data = ss.getSheetByName("Data"); var expiration = dashboard.getRange(7, 3).getValue(); var sym = dashboard.getRange(7, 4).getValue(); var contracts = dashboard.getRange(7, 5).getValue(); var type = dashboard.getRange(7, 6).getValue(); var shortleg = dashboard.getRange(7, 7).getValue(); var longleg = dashboard.getRange(7, 8).getValue(); var pop = dashboard.getRange(7, 9).getValue(); var credit = dashboard.getRange(7, 10).getValue(); // 修复了if判断的括号与多余运算符问题 if (expiration=="" || sym=="" || contracts=="" || type=="" || shortleg=="" || longleg=="" || pop=="" || credit=="") { var ui = SpreadsheetApp.getUi(); // 告警提示已改为你需要的中文内容 var response = ui.alert('Missing data','请补全缺失值后重试', ui.ButtonSet.OK); return; } data.insertRowAfter(data.getLastRow()); var lastRow = data.getLastRow(); var now = new Date(); data.getRange(lastRow, 1).setValue(now); data.getRange(lastRow, 2).setValue(sym); data.getRange(lastRow, 3).setValue(type); data.getRange(lastRow, 4).setValue(expiration); data.getRange(lastRow, 6).setValue(longleg); data.getRange(lastRow, 7).setValue(shortleg); data.getRange(lastRow, 9).setValue(contracts); data.getRange(lastRow, 10).setValue(credit); data.getRange(lastRow, 13).setValue(pop); data.getRange(lastRow-1, 33).copyTo(data.getRange(lastRow, 33)); data.getRange(lastRow-1, 34).copyTo(data.getRange(lastRow, 34)); data.getRange(lastRow-1, 35).copyTo(data.getRange(lastRow, 35)); data.getRange(lastRow-1, 36).copyTo(data.getRange(lastRow, 36)); data.getRange(lastRow-1, 37).copyTo(data.getRange(lastRow, 37)); dashboard.getRange(7,2,1,11 ).clearContent(); }
内容的提问来源于stack exchange,提问作者Jason Saint-Elie
相关产品推荐
相关产品推荐

