我的问题很简单:你如何得到错误信息!?
我所要做的只是顶部的红色框,上面写着“Script CustomSort Experienced an Error”,这几乎是最模糊的!
更深入地说,以下工作大约一周前有效,现在不再有效。我至少有一个月没碰剧本了。虽然已经添加了行。我将电子表格恢复到以前可以工作的状态,但它仍然无法工作。
function onOpen()
{
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [ {name: "Custom Sort", functionName: "CustomSort"}];
ss.addMenu("Sort", menuEntries);
CustomSort();
}
function CustomSort()
{
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange(2,1,sheet.getMaxRows()-1,sheet.getMaxColumns());
var headers = sheet.getRange(1, 1, 1, sheet.getMaxColumns()).getValues();
var sortOrder = new Array;
sortOrder.push({ column: headers[0].indexOf("Completion Date")+1, ascending: true });
sortOrder.push(headers[0].indexOf("Owner")+1);
sortOrder.push(headers[0].indexOf("Tentative Due Date")+1);
sortOrder.push({ column: headers[0].indexOf("Priority")+1, ascending: false });
sortOrder.push(headers[0].indexOf("Department")+1);
range.sort(sortOrder);
}
我可以在脚本编辑器中毫无错误地运行脚本,但我的理解是它使用空工作表运行脚本(这是真的吗?),这可能表明工作表中存在问题。
如果出现错误甚至是行号,我会很快弄清楚!我试图避免撕开相当大的电子表格或代码来解决这个问题。
我做了一堆谷歌搜索,有很多类似问题是谷歌问题的参考,但我认为这个问题已经存在了好几天。
(我的日志记录也没有运气,这进一步限制了我的调试能力。总之,我觉得我在调试工具部门有障碍。我唯一的策略是将所有内容简化为最简单的测试用例,然后慢慢一次添加一行代码或一行电子表格,直到它爆炸。当然必须有更好的方法;哦,伟大的互联网,请给我你的智慧!)