Class DataValidation

Validation des données

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.
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é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 de ses paramètres.
getAllowInvalid()BooleanRenvoie true si la règle affiche un avertissement lorsque la validation des données échoue ou false si elle rejette complètement l'entrée.
getCriteriaType()DataValidationCriteriaRécupère le type de critères 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 de ses paramètres.

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

Renvois

DataValidationBuilder : compilateur basé sur les paramètres de cette règle


getAllowInvalid()

Renvoie true si la règle affiche un avertissement lorsque la validation des données échoue 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 les entrées qui ne respectent pas la validation des données, false sinon


getCriteriaType()

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

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ères, utilisez getCriteriaType(). Pour utiliser ces valeurs pour créer ou modifier une règle de validation des données, consultez 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.');
}

Renvois

Object[] : tableau d'arguments approprié au type de critères 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