Class DataValidation

DataValidation

Accéder aux règles de validation des données Pour créer une règle, utilisez SpreadsheetApp.newDataValidation() et DataValidationBuilder. Vous pouvez utiliser Range.setDataValidation(rule) pour définir la règle de validation d'une plage.

// 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éthodes

MéthodeType renvoyéBrève description
copy()DataValidationBuilderCrée un outil de création pour une règle de validation des données en fonction des paramètres de cette règle.
getAllowInvalid()BooleanRenvoie true si la règle affiche un avertissement lorsque l'entrée échoue à la validation des données, ou false si elle rejette complètement l'entrée.
getCriteriaType()DataValidationCriteriaRécupère le type de critère de la règle tel que défini dans l'énumération DataValidationCriteria.
getCriteriaValues()Object[]Récupère un tableau d'arguments pour les critères de la règle.
getHelpText()StringRécupère le texte d'aide de la règle ou null si aucun texte d'aide n'est défini.

Documentation détaillée

copy()

Crée un outil de création pour une règle de validation des données en fonction des paramètres de cette règle.

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

Renvois

DataValidationBuilder : outil de création basé sur les paramètres de cette règle


getAllowInvalid()

Renvoie true si la règle affiche un avertissement lorsque l'entrée échoue à la validation des données, ou false si elle rejette complètement l'entrée. La valeur par défaut pour les nouvelles règles de validation des données est true.

Renvois

Boolean : true si la règle autorise une entrée qui échoue à la validation des données false si ce n'est pas le cas


getCriteriaType()

Récupère le type de critère de la règle tel que défini dans l'énumération DataValidationCriteria. Pour obtenir arguments pour les critères, utilisez getCriteriaValues(). Pour utiliser ces valeurs pour créer ou modifier une règle de validation des données, voir 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.')
}

Renvois

DataValidationCriteria : type de critères de validation des données


getCriteriaValues()

Récupère un tableau d'arguments pour les critères de la règle. Pour obtenir le type de critère, utilisez getCriteriaType(). Pour utiliser ces valeurs afin de créer ou de modifier une règle de validation des données, consultez 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.')
}

Renvois

Object[] : tableau d'arguments adaptés au type de critère de la règle. le nombre d'arguments et leur type correspondent à la méthode require...() correspondante de la classe DataValidationBuilder.


getHelpText()

Récupère le texte d'aide de la règle ou null si aucun texte d'aide n'est défini.

Renvois

String : texte d'aide de la règle ou null si aucun texte d'aide n'est défini