Class DataValidation

Проверка данных

Доступ к правилам проверки данных. Для создания нового правила используйте SpreadsheetApp.newDataValidation() и DataValidationBuilder . Вы можете использовать Range.setDataValidation(rule) , чтобы установить правило проверки для диапазона.

// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
  const criteria = rule.getCriteriaType();
  const args = rule.getCriteriaValues();
  Logger.log('The data validation rule is %s %s', criteria, args);
} else {
  Logger.log('The cell does not have a data validation rule.');
}

Методы

Метод Тип возвращаемого значения Краткое описание
copy() Data Validation Builder Создает конструктор для правила проверки данных на основе настроек этого правила.
get Allow Invalid() Boolean Возвращает true если правило выдает предупреждение при непрохождении проверки входных данных, или false если оно полностью отклоняет входные данные.
get Criteria Type() Data Validation Criteria Получает тип критериев правила, определенный в перечислении « Data Validation Criteria .
get Criteria Values() Object[] Получает массив аргументов для критериев правила.
get Help Text() String Получает текст справки к правилу или null , если текст справки не задан.

Подробная документация

copy()

Создает конструктор для правила проверки данных на основе настроек этого правила.

// Change existing data validation rules that require a date in 2013 to require
// a date in 2014.
const oldDates = [new Date('1/1/2013'), new Date('12/31/2013')];
const newDates = [new Date('1/1/2014'), new Date('12/31/2014')];
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns());
const rules = range.getDataValidations();

for (let i = 0; i < rules.length; i++) {
  for (let j = 0; j < rules[i].length; j++) {
    const rule = rules[i][j];

    if (rule != null) {
      const criteria = rule.getCriteriaType();
      const args = rule.getCriteriaValues();

      if (criteria === SpreadsheetApp.DataValidationCriteria.DATE_BETWEEN &&
          args[0].getTime() === oldDates[0].getTime() &&
          args[1].getTime() === oldDates[1].getTime()) {
        // Create a builder from the existing rule, then change the dates.
        rules[i][j] = rule.copy().withCriteria(criteria, newDates).build();
      }
    }
  }
}
range.setDataValidations(rules);

Возвращаться

DataValidationBuilder — конструктор, основанный на настройках этого правила.


getAllowInvalid()

Возвращает true если правило выдает предупреждение при непрохождении проверки входных данных, или false если оно полностью отклоняет входные данные. Значение по умолчанию для новых правил проверки данных — true .

Возвращаться

Booleantrue если правило допускает ввод данных, не прошедших проверку достоверности; false , если нет.


getCriteriaType()

Получает тип критериев правила, определенный в перечислении DataValidationCriteria . Чтобы получить аргументы для критериев, используйте getCriteriaValues() . Чтобы использовать эти значения для создания или изменения правила проверки данных, см. DataValidationBuilder.withCriteria(criteria, args) .

// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
  const criteria = rule.getCriteriaType();
  const args = rule.getCriteriaValues();
  Logger.log('The data validation rule is %s %s', criteria, args);
} else {
  Logger.log('The cell does not have a data validation rule.');
}

Возвращаться

DataValidationCriteria — тип критериев проверки данных.


getCriteriaValues()

Получает массив аргументов для критериев правила. Чтобы получить тип критериев, используйте getCriteriaType() . Чтобы использовать эти значения для создания или изменения правила проверки данных, см. DataValidationBuilder.withCriteria(criteria, args) .

// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
  const criteria = rule.getCriteriaType();
  const args = rule.getCriteriaValues();
  Logger.log('The data validation rule is %s %s', criteria, args);
} else {
  Logger.log('The cell does not have a data validation rule.');
}

Возвращаться

Object[] — массив аргументов, соответствующих типу критериев правила; количество аргументов и их тип соответствуют методу require...() класса DataValidationBuilder


getHelpText()

Получает текст справки к правилу или null , если текст справки не задан.

Возвращаться

String — текст справки к правилу или null , если текст справки не указан.