「google apps script リストボックス」
「google apps script 入力 リスト」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
いろいろな解釈のできる検索キーワードです。
が、Googleスプレッドシートでドロップダウンリストからデータ入力できるようにする(Excelでいうなら入力規則を設定する)、GAS(Google Apps Script)スクリプトを探していた可能性が考えられますので、そんなスクリプトをご紹介しておきます。
ドロップダウンリストを作るサンプルスクリプト
以下のようなスクリプトで、Googleスプレッッドシート上で選択されているセル範囲に、「A」「B」「C」という項目がドロップダウン表示されるリストを作成できます。
var rng = SpreadsheetApp
.getActiveSpreadsheet()
.getActiveSheet()
.getActiveRange();
var rule = SpreadsheetApp
.newDataValidation()
.requireValueInList(['A', 'B', 'C'], true)
.build();
}
サンプルスクリプトの解説
前半の、
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スクリプト