Class DataValidation

DataValidation

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

Metodi

MetodoTipo restituitoBreve descrizione
copy()DataValidationBuilderCrea un builder per una regola di convalida dei dati in base alle impostazioni di questa regola.
getAllowInvalid()BooleanRestituisce true se la regola mostra un avviso quando l'input non supera la convalida dei dati o false se rifiuta completamente l'input.
getCriteriaType()DataValidationCriteriaOttiene il tipo di criteri della regola come definito nell'enumerazione DataValidationCriteria.
getCriteriaValues()Object[]Ottiene un array di argomenti per i criteri della regola.
getHelpText()StringOttiene 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 in base alle impostazioni di questa regola.

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

Indietro

DataValidationBuilder : un builder basato sulle impostazioni di questa regola


getAllowInvalid()

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

Indietro

Boolean : true se la regola consente l'input che non supera la convalida dei dati; false in caso contrario


getCriteriaType()

Ottiene il tipo di criteri della regola come definito nell'enumerazione DataValidationCriteria. Per ottenere gli argomenti per i criteri, utilizza getCriteriaValues(). 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.
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.');
}

Indietro

DataValidationCriteria : il tipo di criteri di convalida dei dati


getCriteriaValues()

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

Indietro

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


getHelpText()

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

Indietro

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