Class DataValidation

DataValidation

데이터 유효성 검사 규칙에 액세스합니다. 새 규칙을 만들려면 SpreadsheetApp.newDataValidation()DataValidationBuilder를 사용합니다. Range.setDataValidation(rule)를 사용하여 범위의 검증 규칙을 설정할 수 있습니다.

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

방법

메서드반환 유형간략한 설명
copy()DataValidationBuilder이 규칙의 설정을 기반으로 데이터 유효성 검사 규칙을 위한 빌더를 만듭니다.
getAllowInvalid()Boolean입력이 데이터 유효성 검사에 실패했을 때 규칙에서 경고를 표시하면 true를 반환하고 입력이 완전히 거부되면 false를 반환합니다.
getCriteriaType()DataValidationCriteriaDataValidationCriteria enum에 정의된 대로 규칙의 기준 유형을 가져옵니다.
getCriteriaValues()Object[]규칙의 기준에 대한 인수 배열을 가져옵니다.
getHelpText()String규칙의 도움말 텍스트를 가져오거나 null(도움말 텍스트가 설정되지 않은 경우)를 가져옵니다.

자세한 문서

copy()

이 규칙의 설정을 기반으로 데이터 유효성 검사 규칙을 위한 빌더를 만듭니다.

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

리턴

DataValidationBuilder — 이 규칙의 설정을 기반으로 하는 빌더


getAllowInvalid()

입력이 데이터 유효성 검사에 실패했을 때 규칙에서 경고를 표시하면 true를 반환하고 입력이 완전히 거부되면 false를 반환합니다. 새 데이터 유효성 검사 규칙의 기본값은 true입니다.

리턴

Boolean - 규칙에서 데이터 유효성 검사에 실패한 입력을 허용하는 경우 true, 허용하지 않는 경우 false


getCriteriaType()

DataValidationCriteria enum에 정의된 대로 규칙의 기준 유형을 가져옵니다. 기준의 인수를 가져오려면 getCriteriaValues()을 사용하세요. 이러한 값을 사용하여 데이터 유효성 검사 규칙을 만들거나 수정하려면 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.')
}

리턴

DataValidationCriteria: 데이터 검증 기준의 유형


getCriteriaValues()

규칙의 기준에 대한 인수 배열을 가져옵니다. 기준 유형을 가져오려면 getCriteriaType()을 사용합니다. 이러한 값을 사용하여 데이터 유효성 검사 규칙을 만들거나 수정하려면 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.')
}

리턴

Object[]: 규칙의 기준 유형에 적합한 인수 배열. 인수의 수와 유형은 DataValidationBuilder 클래스의 상응하는 require...() 메서드와 일치합니다.


getHelpText()

규칙의 도움말 텍스트를 가져오거나 null(도움말 텍스트가 설정되지 않은 경우)를 가져옵니다.

리턴

String: 규칙의 도움말 텍스트 또는 도움말 텍스트가 설정되지 않은 경우 null입니다.