Class DataValidation

DataValidation

Acessar regras de validação de dados. Para criar uma nova 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = cell.getDataValidation();
if (rule != null) {
  var criteria = rule.getCriteriaType();
  var 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 dessa regra.
getAllowInvalid()BooleanRetorna true se a regra mostrar um aviso quando a entrada falha na validação de dados ou false se ela rejeita totalmente a entrada.
getCriteriaType()DataValidationCriteriaRecebe o tipo de critério da regra, conforme definido na enumeração 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 foi definido.

Documentação detalhada

copy()

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

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

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

    if (rule != null) {
      var criteria = rule.getCriteriaType();
      var 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);

Retorno

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


getAllowInvalid()

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

Retorno

Boolean: true se a regra permite entrada que falha na validação de dados; false se não for


getCriteriaType()

Recebe o tipo de critério da regra, conforme definido na enumeração DataValidationCriteria. Para acessar os argumentos para os 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = cell.getDataValidation();
if (rule != null) {
  var criteria = rule.getCriteriaType();
  var 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.')
}

Retorno

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


getCriteriaValues()

Recebe uma matriz de argumentos para os critérios da regra. Para ver o tipo de critério, use getCriteriaType(). Se quiser 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.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = cell.getDataValidation();
if (rule != null) {
  var criteria = rule.getCriteriaType();
  var 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.')
}

Retorno

Object[]: uma matriz de argumentos apropriados ao tipo de critérios 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 foi definido.

Retorno

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