GlideのButtonにGAS仕込んでみたハナシ🍑データクリア編
Glideでのアプリ開発にすっかりハマってくれたチサさん(≧艸≦*)ウシシシ
自作の家計簿アプリ、順調にお好みに育てているようです!
このnoteで、不要になったデータを一気にGlide側で削除できないかな~と考えていらっしゃった。
GlideのButtonのACTIONに「Delete Row」というのがあるのだけど、それだと一行ずつになってしまう…
GASならできそうだけどな~🤔って思ったときに、GAS中級講座の卒業LTで自分がやった、GASをウェブアプリにしてURLを叩くことで発火する方法を思い出した🤩
これをButtonに仕込めば、できそうじゃない?!😍
自分も気になったので、検証してみましたー!
① アプリに使用しているスプレッドシートにGASを書く
アプリに使用しているスプレッドシートを開き、拡張機能メニューから「Apps Script」を開く
名前をわかりやすいものに変更。
私はなんとなくスプレッドシートと同じ名前にしてみます。
単純に、タイトル行を残してA2~F100のデータをクリアするコードを書いてみる。
💡HTMLをゴリゴリ書けるようですが、スマホで見やすいようにh1だけ設定…
function doGet() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName('削除検証用');
const range = sheet.getRange("A2:F100");
range.clearContent();
const html = '<h1>データのクリアが完了しました</h1>';
return HtmlService.createHtmlOutput(html);
}
ちゃんとデータがクリアされるかを、実行して確認。
(このときは「データのクリアが完了しました」の表示は出ません)
② ウェブアプリにしてデプロイする
右上のデプロイから「新しいデプロイ」。
設定を「ウェブアプリ」にして、
「デプロイ」!
ウェブアプリの方のURLを「コピー」して、完了。
試しにコピーしたURLをブラウザに入力してEnterしてみると…
こんな感じで画面が表示されて、スプレッドシートのデータがクリアされているはずです✨
③ GlideのButtonにウェブアプリのURLを仕込む
アプリに使用しているスプレッドシートに、新しいシートを追加してこんな感じでコピーしたURLを貼り付けておきます。
Glide側で新しいタブを作成して、Sourceに新しく作ったシートを指定。
STYLEをDetailsにして、SCREENにButtonを追加します。
ACTIONはこんな感じで指定。
見た目はこんな感じ。
④ スマホから実行してみる
では、スマホから実行してみましょう!
今はデータが残っている状態です。
「データクリア」ボタンを押すと…
設定したメッセージが表示されて、
左上の「完了」を押すとアプリの画面に戻ります。
少し反映に時間がかかるかもしれませんが、ちゃんと消えました👏✨
⑤ 所感
GASとの合わせ技、便利ですね~😍
たったこれだけのコードでやりたいことが実現できるなら、GAS書いちゃう🎵
今回はnoteのために簡単なコンテナバインドスクリプトにしてみましたが、ウェブアプリはパラメータを渡すこともできるので、よく使いそうなGASはスタンドアロンにして色んなアプリで共有することもできるなと思いました!
いや~、夢広がりますねーーー!!😍🌈✨
データは別で一覧にしておいて、FILTER関数で欲しいデータだけ引っ張って来る感じにもできるかな?と思ったけど、GlideとGASの連携は興味があったのでやってみました😋
たっ…、楽しい!!🤤
チサさん、よきネタ提供ありがとうございました~🥰