GASで作る確認ダイアログ
GAS基礎とメッセージボックス
Google Apps Script(GAS)は、Google Workspace のサービスを自動化するためのスクリプト言語です。初心者が最初に触れるときは、メッセージボックスを使ってユーザーに情報を伝える方法がよく使われます。メッセージボックスは、スクリプトの実行結果を簡単に確認できるため、デバッグやユーザー対話の入り口として最適です。
基本的な構文は次のようになります。
function showMessage() {
Browser.msgBox('処理が完了しました!');
}
この例では、Browser.msgBoxを呼び出すだけで、ブラウザにポップアップが表示されます。GAS基礎を学ぶ際に、まずはこのような簡単なメッセージボックスから始めると、スクリプトの実行フローを直感的に把握できます。
Browser.msgBoxとui.alertの使い分け
GAS には Browser.msgBox と ui.alert の二種類のメッセージ表示関数があります。Browser.msgBox はスクリプトエディタやスプレッドシートのセルから実行したときに、ブラウザ全体に表示されるシンプルなダイアログです。一方、ui.alert は SpreadsheetApp.getUi() などで取得した UI オブジェクトを介して表示され、スプレッドシートのウィンドウ内に埋め込まれたダイアログとして扱われます。
使い分けのポイントは次の通りです。
- スプレッドシートやドキュメントの UI 内で表示したい場合は
ui.alert。 - スクリプトエディタから直接実行したときに表示したい場合は
Browser.msgBox。
以下は ui.alert の例です。
function showUiAlert() {
var ui = SpreadsheetApp.getUi();
ui.alert('スプレッドシート内で表示されるメッセージです。');
}
確認ダイアログと入力プロンプトの実装例
ユーザー対話をよりインタラクティブにするために、確認ダイアログ(はい/いいえ)や入力プロンプト(prompt)を組み合わせることができます。これにより、ユーザーに操作の確認や追加情報の入力を求めることができます。
以下は確認ダイアログを表示し、ユーザーが「はい」を選択した場合に入力プロンプトを表示するサンプルです。
function confirmAndPrompt() {
var ui = SpreadsheetApp.getUi();
var confirm = ui.alert('続行しますか?', ui.ButtonSet.YES_NO);
if (confirm == ui.Button.YES) {
var response = ui.prompt('名前を入力してください:');
if (response.getSelectedButton() == ui.Button.OK) {
ui.alert('入力された名前は ' + response.getResponseText() + ' です。');
} else {
ui.alert('入力がキャンセルされました。');
}
} else {
ui.alert('処理を中止しました。');
}
}
このように、ui.alert と ui.prompt を組み合わせることで、ユーザーに対して通知や確認、入力を行う一連のフローを簡潔に実装できます。通知機能としても活用でき、スクリプトの実行結果を即座にユーザーに伝えることが可能です。
コメント
コメントを投稿