1

埋め込まれた積み上げ縦棒グラフで 2 つのスプレッドシート範囲を使用しています。スプレッドシートが更新されたときにチャート範囲を編集する必要があります。この記事で説明した手法はほとんどの場合機能しますが、「範囲を垂直方向に結合する」および「行 1 をヘッダーとして使用する」という私のグラフ設定は削除されています (グラフでエラーが発生します)。

setOptions のドキュメントを調べましたが、役に立つものや明白なものは見つかりませんでした。チャートを更新して設定を維持するにはどうすればよいですか?

私のコード:

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var dashboard = ss.getSheetByName("dashboard");
  var data = ss.getSheetByName("data");
  var charts = dashboard.getCharts();
  var builder = charts[0].modify().asColumnChart();
  var ranges = builder.getRanges();

  //remove ranges that might have changed
  for(var i = 0; i < ranges.length; i++)
      builder.removeRange(ranges[i]);

  //add the range used for headers
  builder.addRange(
      data.getRange(1,1,1,data.getLastColumn()));

  //add the range used for data
  builder.addRange(
      data.getRange(data.getLastRow()-10, 1, 10, data.getLastColumn()));

  dashboard.updateChart(builder.build());  
4

1 に答える 1

1

私は同じ問題を抱えていて、この投稿で答えを見つけました:

Google Apps Script グラフ ヘッダーとして行 1 を使用

簡単に言うと、最初の行の形式がプレーン テキストの場合、それはチャートのヘッダーとして使用されます。

あなたの例でそれを行うには、次のコード行を追加します。

data.getRange(1,1,1,data.getLastColumn()).setNumberFormat('@STRING@');
于 2013-10-06T13:18:56.683 に答える