2

Googleスプレッドシートでは、チャートを独自のシートに移動する可能性があります。プログラムで同じことをしたいのですが、これが私のコードです:

  var sheet = SpreadsheetApp.getActiveSheet(),
      spreadSheet = SpreadsheetApp.getActiveSpreadsheet(),
      rows = sheet.getDataRange(),
      numRows = rows.getNumRows(),
      values = rows.getValues();
  // ....
  var pos = values[i][0],
    name = values[i][1],
    avg = values[i][13],
    range = sheet.getRange("C" + i + ":M" + i);
  // ....
  var chart = sheet.newAreaChart()
      .setPosition(1, 1, 10, 10)
      .setChartType(Charts.ChartType.BAR)
      .setOption('title', name)
      .addRange(range)
      .build();
  spreadSheet.insertSheet(name).insertChart(chart);

これどうやってするの?

編集:

ここでより明確にするために、私のスクリプトが行ったことは次のとおりです。

ここに画像の説明を入力

そして、これが私がやりたいことです:

ここに画像の説明を入力

4

2 に答える 2

1

現在、そのような方法はありません。実行しても、シートのグラフは表示されません

spreadsheet.getSheets();

それは最初、私のスクリプトのいくつかで私を失望させました。ただし、プログラムでグラフを作成できる場合は、ガジェットで作成してサイトに表示できます。一部のタイプは、GAS を使用して編集することはできません (つまり、コンボ チャート)。

于 2012-10-26T20:12:13.977 に答える
0

プログラムでグラフを独自のシートにワンステップで移動する方法はないと思いますが、次のような方法で実行できます。

var sheet = SpreadsheetApp.getActiveSheet();
var charts = sheet.getCharts();
sheet.removeChart(charts[0]); // move first chart to another sheet

var newSheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet();
newSheet.insertChart(charts[0]);
于 2012-10-26T15:54:18.980 に答える