スプレッドシートでボタンを作成してGASを実行する
スプレッドシートでも、エクセルのマクロみたいにボタンをクリックしたら、何かが実行されるものが欲しくて作ってみました。GASが分かれば、かんたんに実装できますよ。
スプレッドシートにボタンを作る
GASを実行するボタンを作りたいスプレッドシートで、「挿入」→「図形描画」とクリックして進みます。
図形描画のエリアが表示されます。
図形を描きます。好きな図形で作りましょう。
できたら右上の「保存して終了」をクリックします。
ひとまず、ボタンはできました。
GASを作る
次は、GASを作ります。スプレッドシートのメニューの「拡張機能」から「Apps Script」を選んでGASの画面を開きます。
ここで、GASを書いていきます。今回は、GASの内容は重要じゃないのでサクッと紹介します。
私が今回作ったのは、今の日付と時刻をアクティブシートのアクティブセルに入力するGASです。
function nowtime() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var cell = sheet.getActiveRange();
var today = new Date();
var year = today.getFullYear();
var month = today.getMonth() + 1;
var day = today.getDate();
var hour = today.getHours();
var min =today.getMinutes();
var s = today.getSeconds();
var now = year + "/" + month + "/" + day + " " + hour + ":" + min + ":" + s;
cell.setValue(now);
}
GASができたら、デプロイしておいてください。「デプロイ」から「新しいデプロイ」
歯車のマークをクリックして、ライブラリを選択して右下のデプロイをクリックします。
スプレッドシートに戻ります。
先ほど作ったボタンを右クリックします。
メニューを開き、「スクリプトを割り当て」をクリックします。
今回のスクリプトの名前は「nowtime」なので、名前を書いて、確定を押します。
実行する
できたので、実行してみましょう。ボタンをクリックすると「承認が必要」と出るので、「続行」します。
ポップアップが開いて、アカウントを選択するように言われるので、自分のアカウントを選択します。
次に、詳細をクリックします。
「"GASのプロジェクト名"に移動」をクリックします。
許可をクリックします。これで、実行できるようになりました。
改めて、スプレッドシートに戻ってクリックしてみましょう。実行されるようになっています。
最後に
エクセルみたいにスプレッドシートでも、ボタンを作ってGASを実行できました。応用すればいろいろなことができそうですね。
ディスカッション
コメント一覧
まだ、コメントがありません