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
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
copy() | DataValidationBuilder | Erstellt einen Builder für eine Datenvalidierungsregel auf Basis der Einstellungen dieser Regel. |
getAllowInvalid() | Boolean | 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. |
getCriteriaType() | DataValidationCriteria | Ruft 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() | String | Ruft 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