在工作表对象上使用.getCharts()方法时,遇到了“服务错误:电子表格(第55行,文件“代码”)”错误。
我正在尝试通过API在Google表格中创建图表,然后将其作为概念证明在代码中重新获取,但我仍然会获取错误。我可以验证是否在下面的代码块中正确创建了图表,但是使用该.getCharts()方法时会出现问题。这是代码:
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName("Plot");
var chartBuilder = sheet.newChart();
var inputRange = sheet.getRange("B2:B50");
chartBuilder.setChartType(Charts.ChartType.LINE).setOption('title', 'My Line Chart!').setPosition(5, 5, 0, 0).addRange(inputRange);
sheet.insertChart(chartBuilder.build());
var sheetID = sheet.getCharts()[0].getId();
Logger.log(sheetID);
这里可能是什么问题?
答案 0 :(得分:0)
我认为您遇到问题的原因是图表创建不正确。在您的脚本中,inputRange
不用于chartBuilder
。因此,在这种情况下,创建的图表没有数据。这样,我认为会发生这种错误。
为了避免这种情况,如何进行修改?
chartBuilder.setChartType(Charts.ChartType.LINE).setOption('title', 'My Line Chart!').setPosition(5, 5, 0, 0);
chartBuilder.setChartType(Charts.ChartType.LINE).setOption('title', 'My Line Chart!').setPosition(5, 5, 0, 0).addRange(inputRange);
sheet.getCharts()[0]
并检索了第一个索引的图表。如果这不能解决您的问题,我深表歉意。
答案 1 :(得分:0)
我通过在浏览器(Firefox)中启用Flash插件解决了“服务错误:电子表格”。 Dunno为什么,但是可以。