【GAS講座】SpreadsheetAppは召喚魔法!?モンスターカードゲームで学ぶGoogle Apps Script

SpreadsheetAppって何かよくわからないんです…。難しい魔法みたい…。
猫男
猫男
catman
catman
ふふふ…その悩み、catmanが解決してやろう!GASはまるで“カードバトル”のような世界なんだ!

 

GASはカードゲームと同じってほんと?

じつは、そうなんです。

まずはカードをドローしましょう。

SpreadsheetApp = モンスター召喚!

SpreadsheetAppは、GASでスプレッドシートを操るための「召喚魔法」。
モンスターカードを場に出すようなイメージです!


const ss = SpreadsheetApp.getActiveSpreadsheet();

これで「スプレッドシートの世界」に強力なモンスターが現れたぞ!

メソッドは「カードの効果」だ!

召喚されたモンスターは、さまざまな効果(メソッド)を発動できる。

  • getSheets() → 場のフィールドを確認する
  • getRange("A1") → 狙いを定める
  • getValue() → 攻撃力を確認する

const sheet = ss.getSheets()[0];
const atk = sheet.getRange("B2").getValue();

えっ…!セルの数値って攻撃力だったんだ!
猫男
猫男
catman
catman
そのとおり!メソッドは“行動”、プロパティは“能力値”と思えばバッチリだ!

プロパティとメソッドの違いをカードバトル風にまとめよう!

用語 カードゲーム風の例 GASでの例
プロパティ 攻撃力・守備力・属性 cell.getValue()
メソッド 攻撃する・スキルを使う sheet.getRange()

 

  • SpreadsheetApp はカードを召喚する魔法!
  • getSheets()getRange() はカードの効果発動!
  • getValue() はステータスをチェックする感じ!

 

わあ!SpreadsheetAppって、カードゲームみたいでワクワクしますね!
猫男
猫男
catman
catman
その感覚を忘れるな!GASはコードで戦う“頭脳バトル”なんだ!

 

練習問題にチャレンジ!

問1:モンスター召喚コード

以下のコードは何を意味していますか?最も適切なものを選びましょう。


const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  1. スプレッドシート全体を削除している
  2. 最初のシートを取得している
  3. スプレッドシートの新規作成をしている

問2:このコードの中で「モンスターの効果」に当たるのはどれ?


const value = sheet.getRange("B2").getValue();
  1. sheet
  2. getRange()
  3. B2

 

 

解答と解説

問1の答え:B「最初のシートを取得している」

`getSheets()[0]` はスプレッドシート内の最初のシートを取得する「召喚」のようなコードです。削除や新規作成はしていません。

問2の答え:B「getRange()」

これは「シートの中で、特定のセルを狙い撃ちする効果」に相当します。
まさに“カードの効果を発動する”ような操作ですね!