セル範囲を操作する

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

GASでスプレッドシートでチェックボックスを全て削除するには「removeCheckboxes()」を利用する。

removeCheckboxes()

範囲からすべてのチェックボックスを削除します。各セルのデータ検証をクリアします。また、セルにオンまたはオフのいずれかの値が含まれている場合は、その値をクリアします。

https://developers.google.com/apps-script/reference/spreadsheet/range#removecheckboxes

スプレッドシートでチェックボックスを全て削除するGAS実行の様子

removeCheckboxes()メソッドを利用して、スプレッドシートでチェックボックスを全て削除するGASを実行してみました。

removeCheckboxes()
removeCheckboxes()を実行した様子

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】スプレッドシートに検証がオン状態のチェックボックスを挿入する

関連記事:【GAS】スプレッドシートにオン / オフ値があるチェックボックスを挿入する

関連記事:【GAS】スプレッドシートのチェックボックスがチェック済みか確認する

-セル範囲を操作する