Сбросьте флажки в true (работа с пробелами) - Google Apps Script - PullRequest
0 голосов
/ 21 февраля 2019

Я нашел фрагмент ниже здесь: Переустановите флажки в значение false - Google Apps Script

Мне интересно редактировать это, чтобы установить ложные флажки в значение true, в частности, добавив к немупропустить пустые ячейки.Не могу найти ничего полезного при пропуске заготовок.

function resetCheckBoxesAllSheets() {
var ss = SpreadsheetApp.getActive();
var allsheets = ss.getSheets();
for (var s in allsheets){
var sheet=allsheets[s]

var dataRange = sheet.getRange('A4:Z100');
var values = dataRange.getValues();
for (var i = 0; i < values.length; i++) {
  for (var j = 0; j < values[i].length; j++) {
    if (values[i][j] == true) {
      values[i][j] = false;
    }
  }
}
dataRange.setValues(values);


}
}

1 Ответ

0 голосов
/ 21 февраля 2019

Если вы хотите перевернуть значения набора флажков, это будет сделано для заданного активного диапазона столбца:

Примечание: значение заглавных букв и да, это строки.Если у вас есть какие-либо сомнения по этому поводу, используйте отладчик вашего редактора сценариев, чтобы увидеть, что находится в ваших флажках.Вот как я понял это, когда начал играть с ними.

function resetCheckBoxesAllSheets() {
  var ss = SpreadsheetApp.getActive();
  var sheet=ss.getActiveSheet()
  var dataRange = sheet.getActiveRange();
  var values = dataRange.getValues();
  for (var i=0;i<values.length;i++) {
    values[i][0]=values[i][0]?"FALSE":"TRUE";
  }
  dataRange.setValues(values);
}

Итак, в вашем конкретном случае, если все остальное в вашей функции работает, попробуйте следующее:

function resetCheckBoxesAllSheets() {
  var ss = SpreadsheetApp.getActive();
  var allsheets = ss.getSheets();
  for (var s in allsheets){
    var sheet=allsheets[s]
    var dataRange = sheet.getRange('A4:Z100');
    var values = dataRange.getValues();
    for (var i = 0; i < values.length; i++) {
      for (var j = 0; j < values[i].length; j++) {
        if (values[i][j]) {
          values[i][j] = "FALSE";
        }
      }
    }
    dataRange.setValues(values); 
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...