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")ました。

1 列目は日付、2 列目は整数です。標準の Insert a Graph GUI では、データをそのまま使用できます。

新しい EmbeddedGraph クラスで成功した人はいますか? ありがとう

4

1 に答える 1

11

問題は入力データ範囲ではなく、ビルド プロセスでチャートが配置される場所です。ページのデータの上にグラフを配置しようとしています。チャートの移動先を指定するsetPositionには、 onを使用する必要があります。chartBuilder何も指定しないと、行 1、列 1 に配置しようとするので、データを上書きしようとしている可能性が高いと思います。

最後の行をこれに置き換えてみてください

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

setPositionパラメータは次のとおりです: int 行、int 列、行オフセット、列オフセット。

于 2012-06-19T06:34:15.210 に答える