Class DataValidation

DataValidation

Auf Datenvalidierungsregeln 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.
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.')
}

Methoden

MethodeRückgabetypKurzbeschreibung
copy()DataValidationBuilderErstellt einen Builder für eine Datenvalidierungsregel auf Basis der Einstellungen dieser Regel.
getAllowInvalid()BooleanGibt true zurück, wenn die Regel eine Warnung anzeigt, wenn die Eingabe die Datenvalidierung fehlschlägt, oder false, wenn sie die Eingabe vollständig ablehnt.
getCriteriaType()DataValidationCriteriaRuft den Kriterientyp der Regel entsprechend der Definition in DataValidationCriteria-Enum ab.
getCriteriaValues()Object[]Ruft ein Array mit Argumenten für die Kriterien der Regel ab.
getHelpText()StringRuft den Hilfetext der Regel oder null ab, wenn kein Hilfetext festgelegt wurde.

Detaillierte Dokumentation

copy()

Erstellt einen Builder für eine Datenvalidierungsregel auf Basis der Einstellungen dieser Regel.

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

Return

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 fehlschlägt, oder false, wenn sie die Eingabe vollständig ablehnt. Die Standardeinstellung für neue Datenvalidierungsregeln ist true.

Return

Boolean: true, wenn die Regel eine Eingabe zulässt, bei der die Datenvalidierung fehlschlägt; false, wenn dies nicht der Fall ist


getCriteriaType()

Ruft den Kriterientyp der Regel entsprechend der Definition in DataValidationCriteria-Enum ab. Verwenden Sie getCriteriaValues(), um die Argumente für die Kriterien abzurufen. Informationen zur Verwendung dieser Werte zum Erstellen oder Ändern einer Datenvalidierungsregel finden Sie unter 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.')
}

Return

DataValidationCriteria – der Typ der Datenvalidierungskriterien


getCriteriaValues()

Ruft ein Array mit 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.
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.')
}

Return

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


getHelpText()

Ruft den Hilfetext der Regel oder null ab, wenn kein Hilfetext festgelegt wurde.

Return

String – der Hilfetext der Regel oder null, wenn kein Hilfetext festgelegt wurde