Google Apps Scriptメモ スプレッドシートでダイアログを表示してみる

Apps Script

はじめに

転職してからMicrosoft Officeはほぼ使ってなくてGoogle Spreadsheetなどなどを含むWorkspaceを使うようになり…。
同じ事ような事はできるんだろうけど、やり方知らんなという事で試してみることに。

とりあえず、スプレッドシートでダイアログでも表示してみっかなということで。

準備してみる

準備のポイントとしてはこんな感じ。

  • スプレッドシートを作成する
  • Apps Scriptのプロジェクトを作成する

手順としてはこんな感じ。

  1. スプレッドシートを新規作成する。
  2. メニューで拡張機能/Apps Scriptをクリックする。
  3. Apps Scriptを編集するスクリプトエディタなる画面が表示される。
    同時にスプレッドシートと紐づいたプロジェクトなるものが新規に作成される。
  4. どっちでもいいけどプロジェクトの名前を変更しておく。
    画面上部にある"無題のプロジェクト"って表示されているところをクリックする。

    プロジェクトの名前を変更ってダイアログが表示されるので、プロジェクト タイトルって入力欄にプロジェクト名を入力する。

    今回プロジェクト名は"Sample"ってことにしてダイアログ右下の"名前を変更"をクリックする。

    プロジェクト名が変更される。
  5. これでスクリプトを書く準備はおしまい。

スクリプトを作成する

ダイアログを表示するスクリプトはこんな感じ。

で、コードはこんな感じ。

function myFunction() {
  var dialog = SpreadsheetApp.getUi();
  var title = "hello world!!";
  var message = "nice to meet you!!";
  dialog.alert(title, message, dialog.ButtonSet.OK);
}

スクリプトを実行するには明示的に保存する必要がある。
なので、スクリプトを書いてる枠の上側にある保存ボタンをクリックする。

で、保存するとスクリプトを書いた枠の上側にある実行ボタンがクリックできるようになる。
実行ボタンをクリックするとスクリプトが実行される。

実行ボタンをクリックするとスクリプトが動き始める。
状態はスクリプトを書く枠の下側にある"実行ログ"に表示されるんだけど、1回目は結構時間がかかるっぽい。

で、スクリプトが実行され始めると実行ログに"実行開始"なるメッセージが表示される。

ちな、実行が終わるとこんな感じで実行ログに終わったよってメッセージが表示される。

実行してみる

実行してみるとこんな感じ。

で、ダイアログのOKボタンをクリックするとダイアログが消える。

ちゃんとダイアログとして機能したっぽ。

その他に

作ったスクリプトを削除する手順はスグ分かったけど…プロジェクトってものを削除する手順はスグに分からなかったのでメモ。

スクリプトエディタのメニューからプロジェクトを削除する

スクリプトエディタのメニューから削除する場合はこんな感じ。

  1. スクリプトエディタの左側のメニューにある"概要"(iを丸で囲んだアイコン)をクリックする。

    ちな、マウスオーバーするとメニューが表示される。
  2. プロジェクトの詳細なる画面が表示されるので、右上にある"削除"(ゴミ箱のアイコン)をクリックする。
  3. プロジェクトを削除するかどうか聞いてくるので、"完全に削除"をクリックする。
  4. プロジェクトがスクリプトごと削除されて、プロジェクトがありませんと表示される。
  5. これでプロジェクトの削除はおしまい。

Apps Scriptの管理画面からプロジェクトを削除する

管理画面から削除する場合はこんな感じ。

  1. スクリプトエディタのタイトル"Apps Script"をクリックする。

    プロジェクトのリストが表示される。
  2. 削除したいプロジェクトの右側にある"︙"(縦三点リーダーって呼ぶの?)をクリックする。

    メニューが表示されるので"完全に削除"をクリックする。
  3. プロジェクトを削除するかどうか聞いてくるので、"完全に削除"をクリックする。
  4. プロジェクトが何も表示されていない状態になる。
  5. これでプロジェクトの削除はおしまい。

おわりに

とりあえず、簡単なスクリプトを書くところまではいけたかな?
明日への自分へのメモってことで。

Apps Script – Google Apps Script
https://www.google.com/script/start/