Google Apps Scriptで【はいorいいえ】の質問ボックスを表示させる方法

サンプルコード

 

解説

上記のサンプルコードを使うと以下の質問ボックスを表示させることができます!(サンプルコードはGoogle スプレッドシートで利用する場合のコードです!!)

 

上図の質問ボックスを表示させるためには、以下に示すたった2つの方法を押さえるだけです!

 

  • 質問ボックスを表示させる…alertメソッドを使う
  • はい・いいえの選択肢を表示させる…ButtonSetを使う

 

以下、順を追って説明していきますのでぜひ試してみましょう!

 

質問ボックスを表示させる方法

まずは質問ボックスを表示させる方法です!こちらはGoogle Apps Scriptのalertメソッドを利用することで実現できます!

 

上記のサンプルコードの該当箇所を確認してみましょう!まず、alertメソッドを利用するためにはUiオブジェクトが必要になりますので、getUiメソッドでUiオブジェクトを取得しています。

 

今回はGoogle スプレッドシートで利用することを想定してコードを書いていますが、Google スプレッドシート以外で利用する場合、例えばGoogle ドキュメントで利用する場合にはSpreadsheetAppのところをDocumentAppに変更するだけでOKです‼

 

getUiメソッドでUiオブジェクトを取得できたらalertメソッドを使っていきましょう!先ほどのコードでは変数uiにUiオブジェクトを格納したので、それに続いてalertメソッドを書いていきましょう。

 

これでOKです!それではコードを実行してみましょう…!

 

質問ボックスを表示させることができました!…が、あらら、質問の内容に対してクリックで返答ができるものが「OK」しかありませんね。(ちなみに「×」はキャンセルになりますね)

今回のサンプルでは「本当に削除してよろしいでしょうか?」という質問を投げかける内容にしているのですが、これに対して「OK」しか返答ができないのは不便ですよね。

 

ということで、次に「はいorいいえ」のボタンを実装する方法をお伝えします。これで、表題の疑問を解決することができます!

 

※ちなみに、getUiメソッドを利用できるGoogleサービスは限定されています。詳しくはgetUiのページを御覧くださいね。

 

はい・いいえの選択肢を表示させる方法

alertメソッドで作成した質問ボックスに任意で選択肢ボタンを設置するためにはButtonSetを利用します。

 

詳細は下記の解説ページに委ねますが、ButtonSetを利用することで、alertで作成した質問ボックスに「OK」以外に「はい」や「いいえ」などのボタンを設置することができます‼

 

それではボタン設置の方法をお伝えいたしますね。

先ほど利用したalertメソッドでは引数として質問ボックスに表示させる「本当に削除してよろしいでしょうか?」のテキストのみを記入しましたが、その後にカンマを入力してもう一つ引数を入力できるようにします。

 

そして、この新しく入力ができるようになった箇所に以下のコードを入力します。

 

このコードについてですが、直訳すると、

UiクラスにButtonSetというボタンについての設定値のライブラリがあって、その中の「はい・いいえ」ボタンを実装します

という内容です。

コードでは「YES_NO」と書かれていますが、Googleのツールを日本語設定で利用している場合は「はい・いいえ」と表示されます。

では、先ほどのコードをalertメソッドに組み込んでみましょう。

 

これで【はいorいいえ】の質問ボックスを実装することができました!ButtonSetの値を変更することで他にもいろんなボタンに設定することができますので是非試してみてください!

 

補足

さて、表題の課題は解決したのですが、このalertで生成した質問ボックスで得た回答データを取得して、回答によってさらにプログラムを分岐させる…といった使い方をすることを期待しているかと思います!

回答データを取得したい場合には、先ほどのコードにもう少しだけ追記をする必要があります。

 

最後のalertメソッドのコードを変数に代入するように書くことで、質問ボックスで得た回答データをあとから利用することができるようになります‼

その方法についてですが、また少し説明が長くなってしまうのと、記事の探しやすさを考慮して下記の別記事にまとめました!確認してみてください!

 

おわりに

「はい」もしくは「いいえ」のボタンで回答ができる質問ボックスを作成する方法をご紹介していきました!

サンプルコードでは「本当に削除してよろしいでしょうか?」という確認の質問ボックスを作成しましたが、それ以外にも質問ボックスで尋ねることでGASによるプログラムをより使いやすいものにする工夫がたくさんできそうです。

先述しましたが、回答データを取得してその内容に応じて処理を分岐させることもでき非常に使い勝手の良いコードです。ぜひこの機会にいろいろ使ってみましょう!

 

ご紹介したButtonSetにはYES_NO以外にも設定値があるので先述したリンク先を参考にいろいろなパターンを試してみてください!

yoshi

JavaScript、Google Apps Scriptがメイン。Pythonもちょっとだけ。Google Apps Script開発、Pythonスクレイピングなどをする機会が多いです。ご依頼なども承っております。 記事内容についてのご意見・ご指摘などいただけますと幸いです。

シェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントする