6

这是我不断收到“那些列超出范围”的简短功能

function myFunction() {
var  sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getDataRange();
var chartBuilder = sheet.newChart();
chartBuilder.addRange(range).setChartType(Charts.ChartType.LINE).setOption('title', 'My Line Chart!');
sheet.insertChart(chartBuilder.build());
}

我也试过sheet.getRange("A1:B6")了。

第一列是日期,第二列是整数。标准的插入图形 GUI 可以按原样使用数据。

有人在新的 EmbeddedGraph 类上取得了成功吗?谢谢

4

1 回答 1

11

问题不在于输入数据范围,而在于图表在构建过程中的放置位置。它试图将图表放在页面上的数据之上。您需要使用setPositionchartBuilder判断图表的位置。如果您不指定任何内容,我相信它会尝试将其放在第 1 行第 1 列,这意味着它可能会尝试覆盖您的数据。

尝试用这个替换你的最后一行

sheet.insertChart(chartBuilder.setPosition(7, 1, 1, 1).build());

setPosition参数有:int Row、int Col、Row offset、Col offset。

于 2012-06-19T06:34:15.210 回答