前提・実現したいこと
Spreadsheetで作成した既存のグラフに対し、y軸の1軸と2軸のそれぞれに最大値と最小値を設定するGASを作成しています。
以下のドキュメントから、設定するスクリプトを2種作成したのですが、以下の状況です。
https://developers.google.cn/apps-script/chart-configuration-options?hl=zh-cn#area-config-options
https://qiita.com/HachiwareWorks/items/014826a55940d7d44703
- A案)最大値と最小値が設定されるケースとされないケースがある。
※2-3回実行すれば、内1回は反映されます。
- B案)最大値と最小値が設定されません。
※A案については、4回に1-2回は反映されますので、何が問題となっているのかがわからない状況です・・
発生している問題・エラーメッセージ
特段、エラーは発生しておりません。
該当のソースコード
A案)
javascript
1function graphChange_2series() { 2 const sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); 3 const graphs = sh.getCharts(); 4 5 const newChart = graphs[0] 6 .modify() 7 .setOption('vAxes.0.minValue', 3) 8 .setOption('vAxes.0.maxValue', 7) 9 .setOption('vAxes.1.minValue', 4) 10 .setOption('vAxes.1.maxValue', 6) 11 .build(); 12 sh.updateChart(newChart); 13} 14
B案)
javascript
1function graphChange_2series() { 2 const sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); 3 const graphs = sh.getCharts(); 4 5 const newChart = graphs[0] 6 .modify() 7 .setOption( 8 'vAxes', { 9 series: { 10 0: {targetAxisIndex: 0}, 11 1: {targetAxisIndex: 1} 12 }, 13 vAxes: { 14 0: { 15 minValue: 4, 16 maxValue: 6, 17 }, 18 1: { 19 minValue: 3, 20 maxValue: 7, 21 } 22 } 23 } 24 ) 25 .build(); 26 sh.updateChart(newChart); 27} 28
補足情報(FW/ツールのバージョンなど)
実際には、addRangeなどのoptionもつけていますが、問題となっている個所を抽出しています。
あなたの回答
tips
プレビュー