Home » Googleスプレッドシートの使い方 » ドロップダウンリストからデータ入力できるようにするGoogle Apps Scriptスクリプト

ドロップダウンリストからデータ入力できるようにするGoogle Apps Scriptスクリプト

対象:Googleスプレッドシート&Google Apps Script

「google apps script リストボックス」
「google apps script 入力 リスト」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

いろいろな解釈のできる検索キーワードです。

が、Googleスプレッドシートでドロップダウンリストからデータ入力できるようにする(Excelでいうなら入力規則を設定する)、GAS(Google Apps Script)スクリプトを探していた可能性が考えられますので、そんなスクリプトをご紹介しておきます。

[スポンサードリンク]

ドロップダウンリストを作るサンプルスクリプト

以下のようなスクリプトで、Googleスプレッッドシート上で選択されているセル範囲に、「A」「B」「C」という項目がドロップダウン表示されるリストを作成できます。

function sample_set_validation_list(){
 var rng = SpreadsheetApp
   .getActiveSpreadsheet()
   .getActiveSheet()
   .getActiveRange();

 var rule = SpreadsheetApp
   .newDataValidation()
   .requireValueInList(['A', 'B', 'C'], true)
   .build();

 rng.setDataValidation(rule);
}

サンプルスクリプトの解説

前半の、
 var rng = SpreadsheetApp
   .getActiveSpreadsheet()
   .getActiveSheet()
   .getActiveRange();
で、ドロップダウンリストを作成する、現在選択されているセル範囲を、変数・rngにセットしています。

最後の、
   .getActiveRange();
を、例えば、
   .setActiveSelection("A1:A10");
にすれば、A1:A10セルにドロップダウンリストが作られるようになります。

後半の、
 var rule = SpreadsheetApp
   .newDataValidation()
   .requireValueInList(['A', 'B', 'C'], true)
   .build();
が、この処理のキモです。

SpreadsheetAppクラスのnewDataValidationメソッドで、新しいDataValidationBuilderクラスを取得して、DataValidationBuilderクラスのrequireValueInListメソッドでドロップダウンリストに表示するデータ等を指定して、buildメソッドで、DataValidationを作成して、変数・ruleにセットしています。

最後の
 rng.setDataValidation(rule);
で、RangeクラスのsetDataValidationメソッドで、先に指定したセル範囲にドロップダウンリストを作成しています。

[スポンサードリンク]

Home » Googleスプレッドシートの使い方 » ドロップダウンリストからデータ入力できるようにするGoogle Apps Scriptスクリプト

「Googleスプレッドシートの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.