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
| Methode | Rückgabetyp | Kurzbeschreibung |
|---|---|---|
copy() | Data | Erstellt ein Builder-Objekt für eine Datenvalidierungsregel basierend auf den Einstellungen dieser Regel. |
get | Boolean | Gibt true zurück, wenn für die Regel eine Warnung angezeigt wird, wenn die Eingabe die Datenvalidierung nicht besteht, oder false, wenn die Eingabe vollständig abgelehnt wird. |
get | Data | Ruft den Kriterientyp der Regel ab, wie in der Data-Enumeration definiert. |
get | Object[] | Ruft ein Array von Argumenten für die Kriterien der Regel ab. |
get | String | Ruft den Hilfetext der Regel ab oder null, wenn kein Hilfetext festgelegt ist. |
Detaillierte Dokumentation
copy()
Erstellt ein Builder-Objekt 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 für die Regel eine Warnung angezeigt wird, 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 in der DataValidationCriteria-Enumeration definiert. Verwenden Sie getCriteriaValues(), um die Argumente für die Kriterien abzurufen. Informationen dazu, wie Sie diese Werte zum Erstellen oder Ändern einer Datenvalidierungsregel verwenden, finden 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
DataValidationCriteria – der Typ der Datenvalidierungskriterien
getCriteriaValues()
Ruft ein Array von Argumenten für die Kriterien der Regel ab. Verwenden Sie getCriteriaType(), um den Kriterientyp abzurufen. Informationen dazu, wie Sie diese Werte zum Erstellen oder Ändern einer Datenvalidierungsregel verwenden, finden 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, die dem Kriterientyp der Regel entsprechen. Die Anzahl der Argumente und ihr Typ stimmen mit der entsprechenden require...()-Methode der DataValidationBuilder-Klasse überein.
getHelpText()
Ruft den Hilfetext der Regel ab oder null, wenn kein Hilfetext festgelegt ist.
Rückflug
String – der Hilfetext der Regel oder null, wenn kein Hilfetext festgelegt ist