Google apps scriptでスプレッドシートのテキスト入力ボックスに選択肢を入れる

Google apps scriptでスプレッドシートのテキスト入力ボックスに選択肢を入れるには、

  • inputBox(title, prompt, buttons)

を使う。

・inputBox(title, prompt, buttons)
ユーザーのブラウザのテキスト入力ボックスでダイアログボックスをポップアップ表示します。

inputBoxメソッドは、クライアント側の入力ボックスを指定されたタイトルで表示し、指定されたプロンプトをユーザに表示し、表示するボタンの選択肢を提供します。

この関数は、サーバー側のスクリプトを中断させることに注意してください。ユーザーがダイアログをクリアした後は自動的に再開しますが、JDBC接続はサスペンドの間中存続しません。

パラメーター

タイプ 説明
title String ダイアログボックスのタイトル
prompt String ダイアログボックスに表示されるテキスト
buttons ButtonSet Browser.Buttonsからの列挙型

戻る
String – ユーザーが入力したテキスト(キャンセルされたダイアログまたは却下されたダイアログの場合は ‘キャンセル’)

参照:browser#inputBox(String)

Google apps scriptでスプレッドシートのテキスト入力ボックスに選択肢を入れる

テキスト入力ボックスを表示させる方法では、テキスト入力後ダイレクトにA1セルに値が入力された。

今回はinputBox(title, prompt, buttons)メソッドのbuttonsにOK_CANCELを付けて、キャンセルも出来るようにした。

またtitleにも名前を入れればinputboxのダイアログが、何を意図しているのか分かりやすい。

/*inputboxのタイトルを表示してOK_キャンセルを表示*/
function inputbox1() {

//スプレッドシートAppを呼び出し
var ss = SpreadsheetApp.getActiveSpreadsheet();
//アクティブシートを取得
var sht = ss.getActiveSheet();

//タイトル'ID check’のinputboxを表示してあだ名の入力後、OKかキャンセル
var name = Browser.inputBox('ID Check', 'あなたのあだ名を入力してください', Browser.Buttons.OK_CANCEL);

//inputboxがOKならあだ名をA1セルへ
var rng = sht.getRange("A1").setValue(name);
//キャンセルなら'cancel'が表示される


}

Google apps scriptでスプレッドシートのテキスト入力ボックスに選択肢を入れるsample

 

まとめ

inputboxにタイトルや選択肢を付けることで、ユーザービリティ向上出来そう。

管理側も分かりやすくなる。

使い方自体もinputbox(‘タイトル’,’質問’,’OK_CANCELボタン’)と分かりやすい。

>>Google apps scriptでスプレッドシートのテキスト入力ボックスを表示させる

getCellと組み合わせれば、任意のセル番地を取得出来るかも。

>>メッセージボックスのテキストを改行する

>>スプレッドシートにメッセージボックスと選択肢を表示させる

>>スプレッドシートにポップアップウインドウを表示する