Class DataValidation

Datenvalidierung

Auf Regeln für die Datenvalidierung zugreifen Verwenden Sie SpreadsheetApp.newDataValidation() und DataValidationBuilder, um eine neue Regel zu erstellen. Mit Range.setDataValidation(rule) können Sie die Validierungsregel für einen Bereich festlegen.

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

Methoden

MethodeRückgabetypKurzbeschreibung
copy()DataValidationBuilderErstellt einen Builder für eine Datenvalidierungsregel basierend auf den Einstellungen dieser Regel.
getAllowInvalid()BooleanGibt true zurück, wenn die Regel eine Warnung anzeigt, wenn die Eingabe die Datenvalidierung nicht besteht, oder false, wenn die Eingabe vollständig abgelehnt wird.
getCriteriaType()DataValidationCriteriaRuft den Kriterientyp der Regel ab, wie im DataValidationCriteria-Enum definiert.
getCriteriaValues()Object[]Ruft ein Array von Argumenten für die Kriterien der Regel ab.
getHelpText()StringDer Hilfetext der Regel oder null, wenn kein Hilfetext festgelegt ist.

Detaillierte Dokumentation

copy()

Erstellt einen Builder für eine Datenvalidierungsregel basierend auf den Einstellungen dieser Regel.

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

Rückflug

DataValidationBuilder – ein Builder, der auf den Einstellungen dieser Regel basiert


getAllowInvalid()

Gibt true zurück, wenn die Regel eine Warnung anzeigt, wenn die Eingabe die Datenvalidierung nicht besteht, oder false, wenn die Eingabe vollständig abgelehnt wird. Die Standardeinstellung für neue Regeln zur Datenvalidierung ist true.

Rückflug

Boolean – true, wenn die Regel Eingaben zulässt, die die Datenvalidierung nicht bestehen; false, wenn nicht


getCriteriaType()

Ruft den Kriterientyp der Regel ab, wie im DataValidationCriteria-Enum definiert. Verwenden Sie getCriteriaValues(), um die Argumente für die Kriterien abzurufen. 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.');
}

Rückflug

DataValidationCriteria – die Art der Datenvalidierungskriterien


getCriteriaValues()

Ruft ein Array von Argumenten für die Kriterien der Regel ab. Verwenden Sie getCriteriaType(), um den Kriterientyp abzurufen. Wie Sie diese Werte verwenden, um eine Datenvalidierungsregel zu erstellen oder zu ändern, erfahren Sie unter 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.');
}

Rückflug

Object[]: ein Array von Argumenten, das dem Kriterientyp der Regel entspricht. Die Anzahl der Argumente und ihr Typ stimmen mit der entsprechenden require...()-Methode der DataValidationBuilder-Klasse überein.


getHelpText()

Der Hilfetext der Regel oder null, wenn kein Hilfetext festgelegt ist.

Rückflug

String: Der Hilfetext der Regel oder null, wenn kein Hilfetext festgelegt ist