Class DataValidation

DataValidation

Accedere alle regole di convalida dei dati. Per creare una nuova regola, utilizza SpreadsheetApp.newDataValidation() e DataValidationBuilder. Puoi utilizzare Range.setDataValidation(rule) per impostare la regola di convalida per un intervallo.

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

Metodi

MetodoTipo restituitoBreve descrizione
copy()DataValidationBuilderCrea un builder per una regola di convalida dei dati basata sulle impostazioni di questa regola.
getAllowInvalid()BooleanRestituisce true se la regola mostra un avviso quando l'input non riesce a convalidare i dati o false se rifiuta completamente l'input.
getCriteriaType()DataValidationCriteriaRestituisce il tipo di criteri della regola come definito nell'enumerazione DataValidationCriteria.
getCriteriaValues()Object[]Restituisce un array di argomenti per i criteri della regola.
getHelpText()StringRecupera il testo della guida della regola o null se non è impostato alcun testo della guida.

Documentazione dettagliata

copy()

Crea un builder per una regola di convalida dei dati basata sulle impostazioni di questa regola.

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

Invio

DataValidationBuilder: uno strumento per la creazione basato sulle impostazioni di questa regola


getAllowInvalid()

Restituisce true se la regola mostra un avviso quando l'input non riesce a convalidare i dati o false se rifiuta completamente l'input. Il valore predefinito per le nuove regole di convalida dei dati è true.

Invio

Boolean - true se la regola consente input che non superano la convalida dei dati; false in caso contrario


getCriteriaType()

Restituisce il tipo di criteri della regola come definito nell'enumerazione DataValidationCriteria. Per ottenere per i criteri, utilizza getCriteriaValues(). Per utilizzare questi valori per creare modificare una regola di convalida dei dati, consulta 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.')
}

Invio

DataValidationCriteria: il tipo di criteri di convalida dei dati.


getCriteriaValues()

Restituisce un array di argomenti per i criteri della regola. Per ottenere il tipo di criteri, utilizza getCriteriaType(). Per utilizzare questi valori per creare o modificare una regola di convalida dei dati, consulta 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.')
}

Invio

Object[]: un array di argomenti appropriati al tipo di criteri della regola; il numero di argomenti e il loro tipo corrisponde al metodo require...() corrispondente della classe DataValidationBuilder


getHelpText()

Recupera il testo della guida della regola o null se non è impostato alcun testo della guida.

Invio

String: il testo della guida della regola o null se non è impostato alcun testo della guida