Class DataValidationBuilder

DataValidationBuilder

Builder de regras de validação de dados.

// Set the data validation for cell A1 to require a value from B1:B10.
var cell = SpreadsheetApp.getActive().getRange('A1');
var range = SpreadsheetApp.getActive().getRange('B1:B10');
var rule = SpreadsheetApp.newDataValidation().requireValueInRange(range).build();
cell.setDataValidation(rule);

Métodos

MétodoTipo de retornoBreve descrição
build()DataValidationCria uma regra de validação de dados com base nas configurações aplicadas ao builder.
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.
requireCheckbox()DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja um valor booleano. Esse valor é renderizado como uma caixa de seleção.
requireCheckbox(checkedValue)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja o valor especificado ou em branco.
requireCheckbox(checkedValue, uncheckedValue)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja um dos valores especificados.
requireDate()DataValidationBuilderDefine a regra de validação de dados para exigir uma data.
requireDateAfter(date)DataValidationBuilderDefine a regra de validação de dados para exigir uma data posterior ao valor especificado.
requireDateBefore(date)DataValidationBuilderDefine a regra de validação de dados para exigir uma data antes do valor determinado.
requireDateBetween(start, end)DataValidationBuilderDefine a regra de validação de dados para exigir uma data que esteja entre as duas datas especificadas.
requireDateEqualTo(date)DataValidationBuilderDefine a regra de validação de dados para exigir uma data igual ao valor informado.
requireDateNotBetween(start, end)DataValidationBuilderDefine a regra de validação de dados para exigir uma data que não fique entre duas datas especificadas e não seja nenhuma das duas.
requireDateOnOrAfter(date)DataValidationBuilderDefine a regra de validação de dados para exigir uma data igual ou posterior ao valor fornecido.
requireDateOnOrBefore(date)DataValidationBuilderDefine a regra de validação de dados para exigir uma data igual ou anterior ao valor fornecido.
requireFormulaSatisfied(formula)DataValidationBuilderDefine a regra de validação de dados para exigir que a fórmula seja avaliada como true.
requireNumberBetween(start, end)DataValidationBuilderDefine a regra de validação de dados para exigir um número que esteja entre dois números especificados ou seja um deles.
requireNumberEqualTo(number)DataValidationBuilderDefine a regra de validação de dados para exigir um número igual ao valor fornecido.
requireNumberGreaterThan(number)DataValidationBuilderDefine a regra de validação de dados para exigir um número maior do que o valor fornecido.
requireNumberGreaterThanOrEqualTo(number)DataValidationBuilderDefine a regra de validação de dados para exigir um número maior ou igual ao valor fornecido.
requireNumberLessThan(number)DataValidationBuilderDefine a regra de validação de dados para exigir um número menor do que o valor fornecido.
requireNumberLessThanOrEqualTo(number)DataValidationBuilderDefine a regra de validação de dados para exigir um número menor ou igual ao valor fornecido.
requireNumberNotBetween(start, end)DataValidationBuilderDefine a regra de validação de dados para exigir um número que não fique entre dois números especificados e não seja de nenhum dos dois.
requireNumberNotEqualTo(number)DataValidationBuilderDefine a regra de validação de dados para exigir um número diferente do valor fornecido.
requireTextContains(text)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada contenha o valor determinado.
requireTextDoesNotContain(text)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada não contenha o valor fornecido.
requireTextEqualTo(text)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja igual ao valor fornecido.
requireTextIsEmail()DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada esteja na forma de um endereço de e-mail.
requireTextIsUrl()DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada esteja na forma de um URL.
requireValueInList(values)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja igual a um dos valores fornecidos.
requireValueInList(values, showDropdown)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja igual a um dos valores fornecidos, com uma opção para ocultar o menu suspenso.
requireValueInRange(range)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja igual a um valor no intervalo determinado.
requireValueInRange(range, showDropdown)DataValidationBuilderDefine a regra de validação de dados para exigir que a entrada seja igual a um valor no intervalo especificado, com uma opção para ocultar o menu suspenso.
setAllowInvalid(allowInvalidData)DataValidationBuilderDefine se um aviso será mostrado quando a entrada falhar na validação de dados ou se ela será totalmente rejeitada.
setHelpText(helpText)DataValidationBuilderDefine o texto de ajuda que aparece quando o usuário passa o cursor sobre a célula em que a validação de dados está definida.
withCriteria(criteria, args)DataValidationBuilderDefine a regra de validação de dados para os critérios definidos por valores DataValidationCriteria, normalmente retirados de criteria e arguments de uma regra atual.

Documentação detalhada

build()

Cria uma regra de validação de dados com base nas configurações aplicadas ao builder.

Retorno

DataValidation: uma representação da regra de validação de dados.


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 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 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.


requireCheckbox()

Define a regra de validação de dados para exigir que a entrada seja um valor booleano. Esse valor é renderizado como uma caixa de seleção.

// Set the data validation for cell A1 to require a boolean value; the value is rendered as a
// checkbox.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireCheckbox().build();
cell.setDataValidation(rule);

Retorno

DataValidationBuilder: este builder, para encadeamento


requireCheckbox(checkedValue)

Define a regra de validação de dados para exigir que a entrada seja o valor especificado ou em branco. Quando a entrada corresponde ao valor especificado, a célula é renderizada como uma caixa de seleção marcada. Quando a entrada está em branco, a célula é renderizada como uma caixa de seleção desmarcada.

// Set the data validation for cell A1 to require a custom checked value that is rendered as a
// checkbox.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireCheckbox('APPROVED').build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
checkedValueObjectO valor atribuído a uma caixa marcada.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireCheckbox(checkedValue, uncheckedValue)

Define a regra de validação de dados para exigir que a entrada seja um dos valores especificados. Quando a entrada é checkedValue, a célula é renderizada como uma caixa de seleção marcada. Quando a entrada é uncheckedValue, a célula é renderizada como uma caixa de seleção desmarcada.

// Set the data validation for cell A1 to require custom checked values that are rendered as a
// checkbox.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireCheckbox('APPROVED', 'PENDING').build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
checkedValueObjectO valor atribuído a uma caixa marcada.
uncheckedValueObjectO valor atribuído a uma caixa desmarcada.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDate()

Define a regra de validação de dados para exigir uma data.

// Set the data validation for cell A1 to require a date.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireDate().build();
cell.setDataValidation(rule);

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateAfter(date)

Define a regra de validação de dados para exigir uma data posterior ao valor especificado. Os campos de hora do objeto Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date after January 1, 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireDateAfter(new Date('1/1/2013')).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
dateDateA data mais recente inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateBefore(date)

Define a regra de validação de dados para exigir uma data antes do valor determinado. Os campos de hora do objeto Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date before January 1, 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireDateBefore(new Date('1/1/2013')).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
dateDateA data mais próxima inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateBetween(start, end)

Define a regra de validação de dados para exigir uma data que esteja entre as duas datas especificadas. Os campos de hora dos objetos Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date in 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation()
    .requireDateBetween(new Date('1/1/2013'), new Date('12/31/2013')).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
startDateA data mais próxima aceitável.
endDateA data aceitável mais recente.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateEqualTo(date)

Define a regra de validação de dados para exigir uma data igual ao valor informado. Os campos de hora do objeto Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date equal to January 1, 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireDateEqualTo(new Date('1/1/2013'))
    .build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
dateDateA única data aceita.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateNotBetween(start, end)

Define a regra de validação de dados para exigir uma data que não fique entre duas datas especificadas e não seja nenhuma das duas. Os campos de hora dos objetos Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date not in 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation()
    .requireDateNotBetween(new Date('1/1/2013'), new Date('12/31/2013')).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
startDateA data mais próxima inaceitável.
endDateA data mais recente inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateOnOrAfter(date)

Define a regra de validação de dados para exigir uma data igual ou posterior ao valor fornecido. Os campos de hora do objeto Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date on or after January 1, 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation()
    .requireDateOnOrAfter(new Date('1/1/2013')).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
dateDateA data mais próxima aceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireDateOnOrBefore(date)

Define a regra de validação de dados para exigir uma data igual ou anterior ao valor fornecido. Os campos de hora do objeto Date são ignorados. Apenas os campos de dia, mês e ano são usados.

// Set the data validation for cell A1 to require a date on or before January 1, 2013.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation()
    .requireDateOnOrBefore(new Date('1/1/2013')).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
dateDateA data aceitável mais recente.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireFormulaSatisfied(formula)

Define a regra de validação de dados para exigir que a fórmula seja avaliada como true.

// Set the data validation for cell A1 to equal B1 with a custom formula.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireFormulaSatisfied('=EQ(A1,B1)').build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
formulaStringUma fórmula personalizada que é avaliada como true se a entrada é válida.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberBetween(start, end)

Define a regra de validação de dados para exigir um número que esteja entre dois números especificados ou seja um deles.

// Set the data validation for cell A1 to require a number between 1 and 10.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberBetween(1, 10).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
startNumberO menor valor aceitável.
endNumberO maior valor aceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberEqualTo(number)

Define a regra de validação de dados para exigir um número igual ao valor fornecido.

// Set the data validation for cell A1 to require a number equal to 3.1415926536.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberEqualTo(3.1415926536).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
numberNumberO único valor aceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberGreaterThan(number)

Define a regra de validação de dados para exigir um número maior do que o valor fornecido.

// Set the data validation for cell A1 to require a number greater than 0.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberGreaterThan(0).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
numberNumberO maior valor inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberGreaterThanOrEqualTo(number)

Define a regra de validação de dados para exigir um número maior ou igual ao valor fornecido.

// Set the data validation for cell A1 to require a number greater than or equal to 0.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberGreaterThanOrEqualTo(0).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
numberNumberO menor valor aceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberLessThan(number)

Define a regra de validação de dados para exigir um número menor do que o valor fornecido.

// Set the data validation for cell A1 to require a number less than 0.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberLessThan(0).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
numberNumberO menor valor inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberLessThanOrEqualTo(number)

Define a regra de validação de dados para exigir um número menor ou igual ao valor fornecido.

// Set the data validation for cell A1 to require a number less than or equal to 0.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberLessThanOrEqualTo(0).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
numberNumberO maior valor aceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberNotBetween(start, end)

Define a regra de validação de dados para exigir um número que não fique entre dois números especificados e não seja de nenhum dos dois.

// Set the data validation for cell A1 to require a number not between 1 and 10.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberNotBetween(1, 10).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
startNumberO menor valor inaceitável.
endNumberO maior valor inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireNumberNotEqualTo(number)

Define a regra de validação de dados para exigir um número diferente do valor fornecido.

// Set the data validation for cell A1 to require a number not equal to 0.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireNumberNotEqualTo(0).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
numberNumberO único valor inaceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireTextContains(text)

Define a regra de validação de dados para exigir que a entrada contenha o valor determinado.

// Set the data validation for cell A1 to require any value that includes "Google".
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextContains('Google').build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
textStringO valor que a entrada precisa conter.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireTextDoesNotContain(text)

Define a regra de validação de dados para exigir que a entrada não contenha o valor fornecido.

// Set the data validation for cell A1 to require any value that does not include "@".
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextDoesNotContain('@').build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
textStringO valor que a entrada não pode conter.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireTextEqualTo(text)

Define a regra de validação de dados para exigir que a entrada seja igual ao valor fornecido.

// Set the data validation for cell A1 to require "Yes".
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextEqualTo('Yes').build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
textStringO único valor aceitável.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireTextIsEmail()

Define a regra de validação de dados para exigir que a entrada esteja na forma de um endereço de e-mail.

// Set the data validation for cell A1 to require text in the form of an email address.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextIsEmail().build();
cell.setDataValidation(rule);

Retorno

DataValidationBuilder: este builder, para encadeamento


requireTextIsUrl()

Define a regra de validação de dados para exigir que a entrada esteja na forma de um URL.

// Set the data validation for cell A1 to require text in the form of a URL.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireTextIsUrl().build();
cell.setDataValidation(rule);

Retorno

DataValidationBuilder: este builder, para encadeamento


requireValueInList(values)

Define a regra de validação de dados para exigir que a entrada seja igual a um dos valores fornecidos.

// Set the data validation for cell A1 to require "Yes" or "No", with a dropdown menu.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireValueInList(['Yes', 'No']).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
valuesString[]Uma matriz de valores aceitáveis.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireValueInList(values, showDropdown)

Define a regra de validação de dados para exigir que a entrada seja igual a um dos valores fornecidos, com uma opção para ocultar o menu suspenso.

// Set the data validation for cell A1 to require "Yes" or "No", with no dropdown menu.
var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation().requireValueInList(['Yes', 'No'], false).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
valuesString[]Uma matriz de valores aceitáveis.
showDropdownBooleantrue se a planilha mostrar um menu suspenso para os valores; false se não for.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireValueInRange(range)

Define a regra de validação de dados para exigir que a entrada seja igual a um valor no intervalo determinado.

// Set the data validation for cell A1 to require a value from B1:B10, with a dropdown menu.
var cell = SpreadsheetApp.getActive().getRange('A1');
var range = SpreadsheetApp.getActive().getRange('B1:B10');
var rule = SpreadsheetApp.newDataValidation().requireValueInRange(range).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
rangeRangeUm intervalo que contém os valores aceitáveis.

Retorno

DataValidationBuilder: este builder, para encadeamento


requireValueInRange(range, showDropdown)

Define a regra de validação de dados para exigir que a entrada seja igual a um valor no intervalo especificado, com uma opção para ocultar o menu suspenso.

// Set the data validation for cell A1 to require value from B1:B10, with no dropdown menu.
var cell = SpreadsheetApp.getActive().getRange('A1');
var range = SpreadsheetApp.getActive().getRange('B1:B10');
var rule = SpreadsheetApp.newDataValidation().requireValueInRange(range, false).build();
cell.setDataValidation(rule);

Parâmetros

NomeTipoDescrição
rangeRangeUm intervalo que contém os valores aceitáveis.
showDropdownBooleantrue se a planilha mostrar um menu suspenso para os valores; false se não for.

Retorno

DataValidationBuilder: este builder, para encadeamento


setAllowInvalid(allowInvalidData)

Define se um aviso será mostrado quando a entrada falhar na validação de dados ou se ela será totalmente rejeitada. O padrão para novas regras de validação de dados é true.

Parâmetros

NomeTipoDescrição
allowInvalidDataBooleantrue se a regra deve permitir entrada que falhe na validação de dados; false se não for.

Retorno

DataValidationBuilder: este builder, para encadeamento


setHelpText(helpText)

Define o texto de ajuda que aparece quando o usuário passa o cursor sobre a célula em que a validação de dados está definida.

Parâmetros

NomeTipoDescrição
helpTextStringO texto de ajuda a ser definido.

Retorno

DataValidationBuilder: este builder, para encadeamento


withCriteria(criteria, args)

Define a regra de validação de dados para os critérios definidos por valores DataValidationCriteria, normalmente retirados de criteria e arguments de uma regra atual.

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

Parâmetros

NomeTipoDescrição
criteriaDataValidationCriteriaO tipo de critério de validação de dados.
argsObject[]Uma matriz de argumentos apropriados ao tipo de critérios. O número de argumentos e o tipo correspondem ao método require...() correspondente acima.

Retorno

DataValidationBuilder: este builder, para encadeamento