Google Sheets脚本运行正常却报activate方法参数不匹配错误求解决
问题解决说明
你遇到的报错是因为调用工作表实例方法时传入了多余的无关参数,不符合方法签名要求:
Sheet.activate()方法不需要传入任何参数,你在AddRoutedOptions函数末尾写的rsc.activate('Routed Setup Checklist')属于多余的错误调用,且你定义rsc变量时已经执行过激活操作,这行直接删除即可。Sheet.hideSheet()方法不需要传入任何参数,你在RemoveRoutedOptions函数末尾写的rsc.hideSheet('Routed Setup Checklist')属于多余的错误调用,且你定义rsc变量时已经执行过隐藏操作,这行直接删除即可。
修正后的完整代码
function AddRoutedOptions() { var ui = SpreadsheetApp.getUi(); var result = ui.alert( 'Add all Routed tasks to the Project Tracker?', 'Are you sure you want to add all Routed tasks to the Project Tracker?', ui.ButtonSet.YES_NO); // 处理用户响应 if (result == ui.Button.YES) { var pglc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Pre-Go Live Checklist'); var vcc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Video Course Checklist'); var rsc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Routed Setup Checklist').activate(); pglc.getRange('B32:B35').copyTo(pglc.getRange('E23:E26'), {contentsOnly:true}); vcc.getRange('B32:C37').copyTo(vcc.getRange('G10:H15'), {contentsOnly:true}); } else { ui.alert('No tasks were added.'); } } function RemoveRoutedOptions() { var ui = SpreadsheetApp.getUi(); var result = ui.alert( 'Remove all Routed tasks from the Project Tracker?', 'Are you sure you want to remove all Routed tasks from the Project Tracker?', ui.ButtonSet.YES_NO); // 处理用户响应 if (result == ui.Button.YES) { var pglc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Pre-Go Live Checklist'); var vcc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Video Course Checklist'); var rsc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Routed Setup Checklist').hideSheet(); pglc.getRange('E23:E26').clearContent(); vcc.getRange('G10:H15').clearContent(); } else { ui.alert('No tasks were removed.') } }
内容的提问来源于stack exchange,提问作者Chaz
相关产品推荐
相关产品推荐

