GASでスプレッドシートでチェックボックスを全て削除するには「removeCheckboxes()
」を利用する。
removeCheckboxes()
範囲からすべてのチェックボックスを削除します。各セルのデータ検証をクリアします。また、セルにオンまたはオフのいずれかの値が含まれている場合は、その値をクリアします。
https://developers.google.com/apps-script/reference/spreadsheet/range#removecheckboxes
スプレッドシートでチェックボックスを全て削除するGAS実行の様子
removeCheckboxes()メソッドを利用して、スプレッドシートでチェックボックスを全て削除するGASを実行してみました。
removeCheckboxes()を実行したことで、指定範囲のチェックボックスを一括削除することができます。
スプレッドシートにチェックが入ったチェックボックスを挿入する場合は、以下記事を御覧ください。
参照記事:【GAS】スプレッドシートのチェックボックスに値でチェックを入れる
スプレッドシートでチェックボックスを全て削除するGAS
function cehckboxdelete(){
//SpreadsheetAppを起動
let ss = SpreadsheetApp.getActiveSpreadsheet();
//0番目のシートを取得
let sht = ss.getSheets()[0];
//シート全体をクリア
sht.clear();
//100行目まで繰り返しコンテンツを入力
for(var i=1;i<=100;i++){
let text = [
["No"+i,"Spreadsheet","Blue"]
];
sht.getRange(i,1,1,3).setValues(text);
}
//チェックボックスを挿入する範囲を取得する
let lastrw = sht.getLastRow();
let lastcl = sht.getLastColumn();
let start = sht.getRange(1,lastcl+1).getA1Notation();
let end = sht.getRange(lastrw,lastcl+1).getA1Notation();
let rng = sht.getRange(start+":"+end);
//insertCheckboxesでチェックボックスを挿入してyesでチェックありに設定
rng.insertCheckboxes('yes', 'no');
//値yesを入力してチェックを挿入
rng.setValue("yes");
//YESNOで作業をするか確認
const yesno = Browser.msgBox("チェックボックスをすべて削除しますか?",Browser.Buttons.YES_NO_CANCEL);
//YESなら
if(yesno=="yes"){
//■removeCheckboxesでチェックボックスをすべて削除
rng.removeCheckboxes();
Browser.msgBox("チェックボックスをすべて削除しました。");
//Noならチェックボックスを削除しない
}else{
Browser.msgBox("作業を中止しました");
}
}
removeCheckboxes()の戻り値
Range - チェーン用の範囲。
スプレッドシートでチェックボックスを全て削除するまとめ
GAS×スプレッドシートでチェックボックスを全て削除するならremoveCheckboxes()
メソッドを利用しましょう。
関連記事:【GAS】スプレッドシートにチェックボックスを挿入する
関連記事:【GAS】スプレッドシートに検証がオン状態のチェックボックスを挿入する