Class DataValidation

Validação de dados

Acessar regras de validação de dados. Para criar uma regra, use SpreadsheetApp.newDataValidation() e DataValidationBuilder. Use Range.setDataValidation(rule) para definir a regra de validação de um intervalo.

// 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.');
}

Métodos

MétodoTipo de retornoBreve descrição
copy()DataValidationBuilderCria um builder para uma regra de validação de dados com base nas configurações dela.
getAllowInvalid()BooleanRetorna true se a regra mostrar um aviso quando a entrada falhar na validação de dados ou false se ela rejeitar a entrada completamente.
getCriteriaType()DataValidationCriteriaExtrai o tipo de critério da regra, conforme definido no tipo enumerado DataValidationCriteria.
getCriteriaValues()Object[]Recebe uma matriz de argumentos para os critérios da regra.
getHelpText()StringRecebe o texto de ajuda da regra ou null se nenhum texto de ajuda estiver definido.

Documentação detalhada

copy()

Cria um builder para uma regra de validação de dados com base nas configurações dela.

// 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);

Retornar

DataValidationBuilder: um builder com base nas configurações da regra


getAllowInvalid()

Retorna true se a regra mostrar um aviso quando a entrada falhar na validação de dados ou false se ela rejeitar a entrada completamente. O padrão para novas regras de validação de dados é true.

Retornar

Boolean: true se a regra permitir entradas que não passam na validação de dados; false, caso contrário.


getCriteriaType()

Extrai o tipo de critério da regra, conforme definido no tipo enumerado DataValidationCriteria. Para conferir os argumentos dos critérios, use getCriteriaValues(). Para usar esses valores para criar ou modificar uma regra de validação de dados, consulte 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.');
}

Retornar

DataValidationCriteria: o tipo de critérios de validação de dados


getCriteriaValues()

Recebe uma matriz de argumentos para os critérios da regra. Para receber o tipo de critério, use getCriteriaType(). Para usar esses valores para criar ou modificar uma regra de validação de dados, consulte 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.');
}

Retornar

Object[]: uma matriz de argumentos apropriados para o tipo de critério da regra. O número de argumentos e o tipo deles correspondem ao método require...() correspondente da classe DataValidationBuilder.


getHelpText()

Recebe o texto de ajuda da regra ou null se nenhum texto de ajuda estiver definido.

Retornar

String: o texto de ajuda da regra ou null se nenhum texto de ajuda estiver definido.