この記事を読むことによって、GAS(Google Apps Script)の最も基礎的な縦棒グラフの作り方が学べます。
このコーナーではGASをアニメ、ハンターハンターを通して入門の入門から学べる記事を掲載しております。
GASサンプル集に戻る
メインメニューに戻る
これからプログラミングを始める方へ
基本情報技術者へ
自己紹介
まず、前回(episode7)の復習をします。
セルに「平均」、「170cm以上の人数」と入力し、平均身長と該当する人数を求めています。
この身長のデータは、HUNTER×HUNTER(ハンターハンター)の主要キャラクターの設定を用いました。
前回のコードです。
//アクティブなスプレッドシートを選択するグローバル(共通の処理)
const ss=SpreadsheetApp.getActiveSheet();
//身長の平均と170cm以上の人数を求める関数
function height(){
ss.getRange(6,1).setValue('平均');
ss.getRange(7,1).setValue('170cm以上の人数');
//平均身長を計算
ss.getRange(6,2).setFormula('=AVERAGE(D1:D4)');
//身長が170cm以上のキャラクターの人数を求める
ss.getRange(7,2).setFormula('=COUNTIF(D1:D4,">=170")');
}
今回は、「キャラクター名」と「身長」の最も簡単な縦棒グラフを作ります。
名前の範囲をセルA1から4行分取得して、定数nameに格納します。
const name=ss.getRange(1,1,4);
身長の範囲をセルD1から4行分取得して、chara_heightとします。
const chara_height=ss.getRange(1,4,4);
以下、「chart」というグラフを作る処理になります。
ここまでで、上記のnameと、chara_heightを追加します。
let chart=ss.newChart()
.asColumnChart()//単純な縦棒グラフ
.addRange(name)//名前を追加
.addRange(chara_height) //身長を追加
セルA10から縦横に10ドット下がった位置に配置し、高さ300、幅400のグラフを指定します。
.setPosition(10,1,10,10)//セルA10からタテ・ヨコ10ドット下がった所に配置
.setOption('height',300)//グラフの高さを設定
.setOption('width',400)//グラフの幅を設定
.build()//グラフを作る
最後にグラフchartをアクティブなスプレッドシートに追加します。
ss.insertChart(chart);
ここまでのコードです。
//アクティブなスプレッドシートを選択するグローバル(共通の処理)
const ss=SpreadsheetApp.getActiveSheet();
//キャラクター名と身長の単純な縦棒グラフを作る
function myGraph(){
//キャラクターの名前を定数nameに格納する
const name=ss.getRange(1,1,4);
//キャラクターの身長を定数chara_heightに格納する
const chara_height=ss.getRange(1,4,4);
//グラフを作る処理
let chart=ss.newChart()
.asColumnChart()//単純な縦棒グラフ
.addRange(name)//名前を追加
.addRange(chara_height) //身長を追加
.setPosition(10,1,10,10)//セルA10からタテ・ヨコ10ドット下がった所に配置
.setOption('height',300)//グラフの高さを設定
.setOption('width',400)//グラフの幅を設定
.build()//グラフを作る
//アクリティブなスプレッドシートにグラフchartを追加する
ss.insertChart(chart);
}
それでは、マクロを実行します。
スプレッドシートに切り替えて、拡張機能→マクロ→関数を追加で指定のマクロ(今回でいえば、myGraph)をインポートします。
再び拡張機能→マクロから「myGraph」を選んで実行します。
グラフが表示されました。
お疲れ様でした。
入門講座はここで最後になります。
最終回までご覧いただき、ありがとうございました(=^x^=)mm
■参考文献の紹介■
初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。
GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本を通してじっくり学べます。