オオタニサン!!大谷翔平の目標シート(マンダラチャート)をスプレッドシートにGASでマクロを使って作ってみた

GAS(Google App Script)で、二刀流で有名な、メジャーリーガー大谷翔平の目標シートが自動で作れるように、枠や色をスプレッドシートにマクロを組んでみました。

←GAS自作サンプルへ戻る

オオタニサンこと、大谷翔平選手が高校時代に作成したマンダラチャートは規則性があるので、マクロの練習に打って付けだと思います。

こんな感じに仕上がりました。

関数は2つ使っています。

1つ目、枠線を囲う。

上のシートを見ると分かるように、1行目の1列目、4列目、7列目と、3で割って1余る行と列を起点として太枠が描かれています。

2つ目、色を付ける

中央の太枠のところを薄黄色に、ど真ん中をオレンジに、その他の各太枠ぶの真ん中を濃い黄色に塗り潰しています。

コピペしたい方はこちらへ。

参考文献

←GAS自作サンプルへ戻る

episode8(最終回) GASの「キャラの身長をシンプルなグラフ化する」(Hunter×Hunterで覚えるGoogle App Script)

GAS(Google App Script)をアニメ、ハンターハンターを通して入門の入門から学べる記事を掲載することになりました。
ふつつか者ですが、よろしくお願いします。

←GAS自作サンプルへ戻る

前回(episode7)の復習をします。

ハンター試験ルーキーのキャラクターのセルの背景や文字の色を設定しました。

そのコードと結果です。

今までのコードです。

今回は、「名前」と「身長」のグラフを作ります。

名前の範囲をセルA1から4行分取得して、cell1とします。

const cell1=sheet.getRange(1,1,4);

名前の範囲をセルD1から4行分取得して、cell2とします。

const cell2=sheet.getRange(1,4,4);

以下、「chart」というグラフを作る処理になります。

ここまでで、上記のcell1と、cell2を追加します。

var chart =sheet.newChart()
.asColumnChart()
.addRange(cell1)
.addRange(cell2)

セルA10から縦横に10ドット下がった位置に配置し、高さ300、幅400のグラフを指定します。

.setPosition(10,1,10,10)
.setOption('height',300)
.setOption('width',400)
.build();
sheet.insertChart(chart);

ここまでのコードです。

今までのコードです。

それでは、マクロを実行します。

スプレッドシートに切り替えて、ツール→マクロ→インポートで指定のマクロをインポートします。

この例ですと、「myGraph」をインポートします。

再びツール→マクロから「myGraph」を選んで実行します。

グラフが表示されました。

お疲れ様でした。
入門講座はここで最後になります。
最終回までご覧いただき、ありがとうございました(=^x^=)mm

←episode7

←GAS自作サンプルへ戻る

episode7 GASの「キャラの身長で演算(平均・条件に該当する数のカウント)」(Hunter×Hunterで覚えるGoogle App Script)

GAS(Google App Script)をアニメ、ハンターハンターを通して入門の入門から学べる記事を掲載することになりました。
ふつつか者ですが、よろしくお願いします。

←GAS自作サンプルへ戻る

前回(episode6)の復習をします。

ハンター試験ルーキーのキャラクターのセルの背景や文字の色を設定しました。

そのコードと結果です。

今までのコードです。

今回は、一番右のセルをキャラクターの身長にして、平均を求めてみたいと思います。

平均を求める処理では、表の少し下のセルA6に「平均」と入力し、その右隣のB6に平均身長が求まるようにします。

sheet.getRange(‘A6’).setValue(‘平均’);
sheet.getRange(‘B6’).setFormula(‘=AVERAGE(D1:D4)’);

条件に当てはまる人数を数える処理では、170cm以上のキャラの人数を数える処理にしました。
平均身長の下のセルA7に「170cm以上」、その右のセルB7に条件に当てはまる人数を求めます。

sheet.getRange(‘A7’).setValue(‘170cm以上’);
sheet.getRange(‘B7’).setFormula(‘=COUNTIF(D1:D4,”>=170″)’);

ここまでのコードです。

今までのコードです。

それでは、マクロを実行します。

スプレッドシートに切り替えて、ツール→マクロ→インポートで指定のマクロをインポートします。

この例ですと、「myCulc」をインポートします。

再びツール→マクロから「myCulc」を選んで実行します。

計算結果が表示されました。

←episode6               episode8(最終回)→

←GAS自作サンプルへ戻る

episode6 GASの「指定したセル範囲に色を付ける」(Hunter×Hunterで覚えるGoogle App Script)

GAS(Google App Script)をアニメ、ハンターハンターを通して入門の入門から学べる記事を掲載することになりました。
ふつつか者ですが、よろしくお願いします。

←GAS自作サンプルへ戻る

前回(episode5)の復習をします。

ハンター試験ルーキーのキャラクターのフォントを大きくしたり、文字を太くしたりしました。

そのコードと結果です。

今までのコードです。

今回は、この表に色を付けます。
イメージとしては、厨二病っぽい感じにしたいと思います。

各キャラクターの名前(列A)と念(列B)を黒背景に白文字に、
ヒソカチェックの列(列C)は、紫にします。

列ABの4行分をcellDATA、列CをcellHISOKAという名前にします。

//列ABの色設定
let cellDATA=sheet.getRange(1,1,4,2);

セルA1から4行2列をcellDATAという名前に設定しています。

cellDATA.setBackground(‘black’);

背景色を黒にしています。

cellDATA.setFontColor(‘white’);

文字の色を白にしています。

//列Cの色設定
let cellHISOKA=sheet.getRange(1,3,4);

セルC1から4行をcellHISOKAという名前にしています。

cellHISOKA.setBackground(‘#eeddee’);

白がFFFFFF、黒が000000で、最初の2桁が赤、次が緑、最後が青です。

このコードでは、赤と青を強めにしていて、薄い紫になります。

ここまでのコードです。

今までのコードです。

それでは、マクロを実行します。

スプレッドシートに切り替えて、ツール→マクロ→インポートで指定のマクロをインポートします。

この例ですと、「myColor」をインポートします。

再びツール→マクロから「myColor」を選んで実行します。

厨二病っぽい表が出来ました。

←episode5               episode7→

←GAS自作サンプルへ戻る

episode5 GASの「指定したセル範囲のフォントを変える」(Hunter×Hunterで覚えるGoogle App Script)

GAS(Google App Script)をアニメ、ハンターハンターを通して入門の入門から学べる記事を掲載することになりました。
ふつつか者ですが、よろしくお願いします。

←GAS自作サンプルへ戻る

前回(episode4)の復習をします。

IF文とForループを使って、各キャラクターの念がヒソカと同じ「変化系」か、それ以外かで分岐しました。

今回は、この表のフォントを変えます。
12ptと少し大きいフォントにして、名前の所を太字にします。

ハンター試験ルーキーのデータが掲載されている範囲は、セルA1からC4まであります。

この範囲の文字の大きさを12ptにします。

範囲に「cellROOKIE(ルーキー)」と名前を付けて、大きさを変える範囲を確保します。

let cellROOKIE=sheet.getRange(1,1,4,3);

(1,1,4,3)は、セルA1(1,1)から4行、3列分の範囲という意味です。

この範囲の設定は下記のコードです。

cellROOKIE.setFontSize(12);

次に、名前を太字にするために、名前の範囲を用意します。

let cellNAME=sheet.getRange(1,1,4,1);

(1,1,4,1)は、セルA1(1,1)から4行、1列分の範囲という意味です。
つまり、A列です。

次に、セルを太字にするコードを書きます。

cellNAME.setFontWeight(‘bold’);

ここまでのコードです。

今までのコードです。

それでは、マクロを実行します。

スプレッドシートに切り替えて、ツール→マクロ→インポートで指定のマクロをインポートします。

この例ですと、「myFont」をインポートします。

再びツール→マクロから「myFont」を選んで実行します。

←episode4               episode6→

←GAS自作サンプルへ戻る

episode4 GASの「ヒソカチェックで、IFとループを一気に学ぶ」(Hunter×Hunterで覚えるGoogle App Script)

GAS(Google App Script)をアニメ、ハンターハンターを通して入門の入門から学べる記事を掲載することになりました。
ふつつか者ですが、よろしくお願いします。

←GAS自作サンプルへ戻る

前回(episode3)の復習をします。

・セルA1からB4にキャラクター名を入力する関数と消去する関数を作り、それぞれをボタンに登録しました。

今回はIF文を使って、ゴンからレオリオのキャラの念がヒソカと同じ変化系かどうか調べます。

ゴンは「強化系」なので「変化系」とは異なる為、条件が当てはまらないelseへと分岐します。

念が入力されているセルA2は(1,2)と洗わせます。

Elseでは、「XXX」と表記されます。

次に、「キルア」を調べます。

キルアは「変化系」なので、「ヒソカ」と同じという条件が当てはまり「ヒソカと一緒」と表示されます。

次に、「クラピカ」を調べます。

クラピカは「具現化系」なので、「変化系」とは異なる為、条件が当てはまらないelseへと分岐します。

最後に、「レオリオ」を調べます。

レオリオは「放出系」なので、「変化系」とは異なる為、条件が当てはまらないelseへと分岐します。

コードをいちいち変えるの面倒なので、Forによるループを使います。

実は、これまでで、ループのトレースができちゃっていました。

追加としては、

ゴン・・・i=1
キルア・・・i=2
クラピカ・・・i=3
レオリオ・・・i=4

と、変数が出てくるぐらいです。

なぜ「i」なのか、それは、ループで慣習的に使う変数として、「i、j、k」がよく使われるからです。このことについては、「なぜ、新人潰しのトンパさんは、トンパさんという名前なのか」と突き詰めてしまうことのようなものなので、ループではiとか使うんだな、程度で大丈夫です。

また、メンバーは4人なので、その人数を調べるために、「LastRow」(最後の行)を調べます。

以上を踏まえてコードを書くと、こうなります。

コードのまとめと結果です。

←episode3               episode5→

←GAS自作サンプルへ戻る