GASでスプレッドシートにオン / オフ値があるチェックボックスを挿入するには「insertCheckboxes(checkedValue, uncheckedValue)
」を利用する。
insertCheckboxes(checkedValue, uncheckedValue)
範囲内の各セルにチェックボックスを挿入し、オン / オフ状態のカスタム値で構成します。範囲内の各セルの値を、オフにしたカスタムの値に設定します。
https://developers.google.com/apps-script/reference/spreadsheet/range#insertcheckboxescheckedvalue,-uncheckedvalue
スプレッドシートにオン / オフ値があるチェックボックスを挿入するGAS実行の様子
insertCheckboxes(checkedValue, uncheckedValue)メソッドを利用して、スプレッドシートにオン / オフ値があるチェックボックスを挿入するGASを実行してみました。
insertCheckboxes(checkedValue, uncheckedValue)を実行することで、
- ✓をするとセルの値がYES
- ✓を外すとセルの値がNo
といった設定を行うことができます。(逆の設定も行えます)
スプレッドシートにチェックボックスを挿入する場合は、以下記事を御覧ください。
参照記事:【GAS】スプレッドシートにチェックボックスを挿入する
スプレッドシートにオン / オフ値があるチェックボックスを挿入するGAS
function insertcheckbox(){
//SpreadsheetAppを起動
let ss = SpreadsheetApp.getActiveSpreadsheet();
//0番目のシートを取得
let sht = ss.getSheets()[0];
//シート全体をクリア
sht.clear();
//10行コンテンツを入力
for(var i=1;i<=10;i++){
let text = [
[i,"Spreadsheet",".Blue"]
]
sht.getRange(i,1,1,3).setValues(text);
}
//YESNOで作業有無を確認
const yesno = Browser.msgBox("チェックボックスを挿入しますか?",Browser.Buttons.YES_NO_CANCEL);
//YESなら
if(yesno == "yes"){
//最終行と最終列を取得してCheckBoxを挿入する範囲を取得・設定
let lastrw = sht.getLastRow();
let lastcl = sht.getLastColumn();
let start = sht.getRange(1,lastcl+1).getA1Notation();
let end = sht.getRange(lastrw,lastcl+1).getA1Notation();
//■insertCheckboxesでCheckBoxを作成・挿入
sht.getRange(start+":"+end).insertCheckboxes('yes','no');
//見出しを作成
sht.insertRowBefore(1);
let midashi = [
["No","項目","備考","CHECK"]
];
sht.getRange(1,1,1,4).setValues(midashi);
//処理メッセージ掲載
Browser.msgBox("チェックボックスを挿入しました。✓するとYESの値になります");
}else{
//作業中止の旨を掲載
Browser.msgBox("作業を中止しました");
}
}
insertCheckboxes(checkedValue, uncheckedValue)のパラメーター
名前 | 型 | 説明 |
---|---|---|
checkedValue | Object | チェックボックスのデータ検証でオンになっている値。 |
uncheckedValue | Object | チェックボックスのデータ検証でオフにされた値。 |
insertCheckboxes(checkedValue, uncheckedValue)の戻り値
Range - チェーン用の範囲。
スプレッドシートにオン / オフ値があるチェックボックスを挿入するまとめ
GAS×スプレッドシートにオン / オフ値があるチェックボックスを挿入するならinsertCheckboxes(checkedValue, uncheckedValue)
メソッドを利用しましょう。
関連記事:【GAS】スプレッドシートにチェックボックスを挿入する