メッセージを操作する

【GAS】スプレッドシートに入力ボックスを作成する

GASでスプレッドシートに入力ボックスを作成するには「prompt(prompt) 」を利用する。

prompt(prompt)

ユーザーのエディタで入力ダイアログ ボックスを開き、所定のメッセージと [OK] ボタンを表示します。このメソッドは、ダイアログが開いている間にサーバー側のスクリプトを停止します。ユーザーがダイアログを閉じるとスクリプトが再開されますが、Jdbc 接続と LockService ロックは停止後も維持されます。詳しくは、ダイアログとサイドバーに関するガイドをご覧ください。

https://developers.google.com/apps-script/reference/base/ui#promptprompt

スプレッドシートに入力ボックスを作成するGAS実行の様子

prompt(prompt) メソッドを利用して、スプレッドシートに入力ボックスを作成するGASを実行してみました。

prompt(prompt)を実行することで、

  • ブラウザ上に入力ボックスと判定ボタンを作成する

といった操作が可能です。

スプレッドシートでチェックボックスを全て削除する場合は、以下記事を御覧ください。

参照記事:【GAS】スプレッドシートでチェックボックスを全て削除する

スプレッドシートに入力ボックスを作成するGAS

//ーーpromptメソッドで入力ボックスを作成
    function input(){
    //SpreadsheetApp.getUiを起動
    var ui = SpreadsheetApp.getUi();
    //■promptメソッドで名前の入力ボックスを作成する
    var res = ui.prompt('名前を決めてください');
    //もし入力ボックスのボタンがOKなら
     if (res.getSelectedButton() == ui.Button.OK) {
    //入力された値を取得して表示する
       ui.alert("名前は"+res.getResponseText()+"です");
    //Noなら
     } else {
     //入力されてません
       ui.alert("名前はわかりません");
     }
    }
     
    //ーーinputBoxメソッドで入力ボックスを作成
    function input2(){
    //■Browser.inputBoxで入力ボックスを作成してYES/Noボタンを表示
     let val = Browser.inputBox("あだ名を入力してください",Browser.Buttons.YES_NO);
    //変数valが空白でないなら
     if(val != ""){
    //あだ名を取得
       Browser.msgBox("あだ名は"+val+"です");
    //valが空白なら
     } else {
     //未入力の旨を掲載
       Browser.msgBox("あだ名はありません");
     }
    }

prompt(prompt)のパラメータ

PromptResponse - ユーザーのレスポンスを表します。

スプレッドシートに入力ボックスを作成するまとめ

GAS×スプレッドシートに入力ボックスを作成するならprompt(prompt)メソッドを利用しましょう。

関連記事:【GAS】スプレッドシートの文字を折り返す

関連記事:【GAS】スプレッドシートの文字の折返しを配列で設定する

関連記事:【GAS】スプレッドシートの文字の折返し方法を設定する

関連記事:【GAS】スプレッドシートの文字を斜めにする

-メッセージを操作する