Class DataValidation

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

Правила проверки данных доступа. Чтобы создать новое правило, используйте Spreadsheet App.newDataValidation() и Data Validation Builder . Вы можете использовать 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);

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

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


get Allow Invalid()

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

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

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


get Criteria Type()

Получает тип критерия правила, определенный в перечислении Data Validation Criteria . Чтобы получить аргументы для критериев, используйте get Criteria Values() . Чтобы использовать эти значения для создания или изменения правила проверки данных, см. Data Validation Builder.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.');
}

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

Data Validation Criteria — тип критериев проверки данных.


get Criteria Values()

Получает массив аргументов для критериев правила. Чтобы получить тип критерия, используйте get Criteria Type() . Чтобы использовать эти значения для создания или изменения правила проверки данных, см. Data Validation Builder.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...() класса Data Validation Builder


get Help Text()

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

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

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